/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/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:02:42,763 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:02:42,778 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:02:42,824 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:02:42,824 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:02:42,825 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:02:42,826 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:02:42,827 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:02:42,829 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:02:42,829 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:02:42,830 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:02:42,831 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:02:42,831 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:02:42,835 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:02:42,836 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:02:42,839 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:02:42,839 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:02:42,843 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:02:42,845 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:02:42,850 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:02:42,851 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:02:42,856 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:02:42,857 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:02:42,857 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:02:42,859 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:02:42,865 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:02:42,865 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:02:42,865 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:02:42,866 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:02:42,866 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:02:42,867 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:02:42,867 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:02:42,869 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:02:42,870 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:02:42,870 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:02:42,871 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:02:42,871 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:02:42,872 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:02:42,872 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:02:42,872 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:02:42,873 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:02:42,874 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:02:42,874 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 13:02:42,905 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:02:42,905 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:02:42,906 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:02:42,906 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:02:42,906 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:02:42,906 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:02:42,907 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:02:42,907 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:02:42,907 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:02:42,908 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:02:42,908 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:02:42,908 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:02:42,908 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:02:42,909 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:02:42,910 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:02:42,911 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:02:42,911 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:02:42,911 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:42,911 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:02:42,911 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:02:42,911 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:02:42,912 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:02:42,912 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:02:42,912 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:02:42,912 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:02:42,912 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:02:42,912 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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-27 13:02:43,145 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:02:43,159 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:02:43,161 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:02:43,162 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:02:43,163 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:02:43,164 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c [2022-04-27 13:02:43,216 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/172cc4431/306149a112c74085819ae008e0d5be76/FLAGedf11c96b [2022-04-27 13:02:43,588 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:02:43,589 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c [2022-04-27 13:02:43,595 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/172cc4431/306149a112c74085819ae008e0d5be76/FLAGedf11c96b [2022-04-27 13:02:43,605 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/172cc4431/306149a112c74085819ae008e0d5be76 [2022-04-27 13:02:43,607 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:02:43,608 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:02:43,610 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:43,610 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:02:43,612 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:02:43,613 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,614 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6198869a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43, skipping insertion in model container [2022-04-27 13:02:43,614 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,620 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:02:43,635 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:02:43,767 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c[490,503] [2022-04-27 13:02:43,786 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:43,792 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:02:43,803 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound50.c[490,503] [2022-04-27 13:02:43,813 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:43,824 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:02:43,824 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43 WrapperNode [2022-04-27 13:02:43,824 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:43,825 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:02:43,825 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:02:43,825 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:02:43,833 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,833 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,837 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,838 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,844 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,847 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,848 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,850 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:02:43,850 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:02:43,850 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:02:43,850 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:02:43,851 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (1/1) ... [2022-04-27 13:02:43,869 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:43,875 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:43,885 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-27 13:02:43,903 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-27 13:02:43,932 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:02:43,932 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:02:43,932 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:02:43,932 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:02:43,933 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:02:43,933 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:02:43,933 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:02:43,933 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:02:43,933 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:02:43,933 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:02:43,933 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 13:02:43,933 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:02:43,934 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:02:43,981 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:02:43,982 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:02:44,138 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:02:44,144 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:02:44,145 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 13:02:44,146 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:44 BoogieIcfgContainer [2022-04-27 13:02:44,146 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:02:44,148 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:02:44,148 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:02:44,150 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:02:44,150 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:02:43" (1/3) ... [2022-04-27 13:02:44,151 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6194ea6f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:44, skipping insertion in model container [2022-04-27 13:02:44,151 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:43" (2/3) ... [2022-04-27 13:02:44,151 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6194ea6f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:44, skipping insertion in model container [2022-04-27 13:02:44,151 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:44" (3/3) ... [2022-04-27 13:02:44,153 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound50.c [2022-04-27 13:02:44,163 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:02:44,163 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:02:44,205 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:02:44,224 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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@16477262, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@3e14b84d [2022-04-27 13:02:44,239 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:02:44,249 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 13:02:44,256 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 13:02:44,256 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:44,257 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-27 13:02:44,257 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:44,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:44,265 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 1 times [2022-04-27 13:02:44,272 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:44,272 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2037578484] [2022-04-27 13:02:44,272 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:44,273 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:44,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,397 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:02:44,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,414 INFO L290 TraceCheckUtils]: 0: Hoare triple {72#(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); {43#true} is VALID [2022-04-27 13:02:44,414 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:44,415 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-27 13:02:44,415 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:02:44,417 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,422 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,423 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-27 13:02:44,423 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:02:44,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,430 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,430 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,430 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,431 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-27 13:02:44,431 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:02:44,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,441 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-27 13:02:44,442 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 13:02:44,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,462 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,463 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,463 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,463 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-27 13:02:44,463 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 13:02:44,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,475 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,476 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-27 13:02:44,477 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-27 13:02:44,478 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:44,489 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,490 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-27 13:02:44,492 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {72#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 13:02:44,492 INFO L290 TraceCheckUtils]: 1: Hoare triple {72#(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); {43#true} is VALID [2022-04-27 13:02:44,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:44,492 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-27 13:02:44,493 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-27 13:02:44,493 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {43#true} is VALID [2022-04-27 13:02:44,493 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:44,493 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,494 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,494 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,494 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-27 13:02:44,495 INFO L290 TraceCheckUtils]: 11: Hoare triple {44#false} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {44#false} is VALID [2022-04-27 13:02:44,495 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:44,495 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,496 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,496 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,497 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-27 13:02:44,497 INFO L272 TraceCheckUtils]: 17: Hoare triple {44#false} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:44,497 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,498 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,498 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-27 13:02:44,498 INFO L272 TraceCheckUtils]: 22: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:44,498 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,501 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,501 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,502 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-27 13:02:44,502 INFO L290 TraceCheckUtils]: 27: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {44#false} is VALID [2022-04-27 13:02:44,502 INFO L272 TraceCheckUtils]: 28: Hoare triple {44#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:44,502 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,503 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,504 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,504 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-27 13:02:44,504 INFO L272 TraceCheckUtils]: 33: Hoare triple {44#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:44,504 INFO L290 TraceCheckUtils]: 34: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:44,505 INFO L290 TraceCheckUtils]: 35: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:44,505 INFO L290 TraceCheckUtils]: 36: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:44,505 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-27 13:02:44,505 INFO L290 TraceCheckUtils]: 38: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-27 13:02:44,506 INFO L272 TraceCheckUtils]: 39: Hoare triple {44#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {44#false} is VALID [2022-04-27 13:02:44,506 INFO L290 TraceCheckUtils]: 40: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-27 13:02:44,506 INFO L290 TraceCheckUtils]: 41: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-27 13:02:44,506 INFO L290 TraceCheckUtils]: 42: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-27 13:02:44,507 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-27 13:02:44,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:44,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2037578484] [2022-04-27 13:02:44,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2037578484] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:44,508 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:44,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:02:44,510 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1230789368] [2022-04-27 13:02:44,510 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:44,514 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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 43 [2022-04-27 13:02:44,516 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:44,518 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-27 13:02:44,562 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-27 13:02:44,563 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:02:44,563 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:44,590 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:02:44,590 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:02:44,592 INFO L87 Difference]: Start difference. First operand has 40 states, 20 states have (on average 1.45) internal successors, (29), 22 states have internal predecessors, (29), 14 states have call successors, (14), 4 states have call predecessors, (14), 4 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-27 13:02:44,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:44,824 INFO L93 Difference]: Finished difference Result 73 states and 118 transitions. [2022-04-27 13:02:44,825 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:02:44,825 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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 43 [2022-04-27 13:02:44,826 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:44,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-27 13:02:44,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-27 13:02:44,847 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-27 13:02:44,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-27 13:02:44,855 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 118 transitions. [2022-04-27 13:02:44,987 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:44,997 INFO L225 Difference]: With dead ends: 73 [2022-04-27 13:02:44,997 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 13:02:45,001 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 21 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-27 13:02:45,008 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 20 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:45,009 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 42 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:45,022 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 13:02:45,057 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-27 13:02:45,057 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:45,058 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:45,058 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:45,059 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:45,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:45,063 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-27 13:02:45,063 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 13:02:45,064 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:45,064 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:45,065 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-27 13:02:45,065 INFO L87 Difference]: Start difference. First operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 35 states. [2022-04-27 13:02:45,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:45,069 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-27 13:02:45,069 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 13:02:45,070 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:45,070 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:45,070 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:45,070 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:45,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 19 states have internal predecessors, (20), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:45,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 46 transitions. [2022-04-27 13:02:45,075 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 46 transitions. Word has length 43 [2022-04-27 13:02:45,075 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:45,075 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 46 transitions. [2022-04-27 13:02:45,075 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (9), 3 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-27 13:02:45,076 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 13:02:45,077 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:02:45,077 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:45,077 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-27 13:02:45,077 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:02:45,077 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:45,082 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:45,082 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 1 times [2022-04-27 13:02:45,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:45,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [322517186] [2022-04-27 13:02:45,082 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:45,082 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:45,109 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:45,109 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [235475464] [2022-04-27 13:02:45,109 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:45,110 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:45,110 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:45,111 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-27 13:02:45,120 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-27 13:02:45,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:45,186 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:02:45,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:45,210 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:45,420 INFO L272 TraceCheckUtils]: 0: Hoare triple {308#true} call ULTIMATE.init(); {308#true} is VALID [2022-04-27 13:02:45,420 INFO L290 TraceCheckUtils]: 1: Hoare triple {308#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); {308#true} is VALID [2022-04-27 13:02:45,421 INFO L290 TraceCheckUtils]: 2: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,421 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {308#true} {308#true} #103#return; {308#true} is VALID [2022-04-27 13:02:45,421 INFO L272 TraceCheckUtils]: 4: Hoare triple {308#true} call #t~ret6 := main(); {308#true} is VALID [2022-04-27 13:02:45,421 INFO L290 TraceCheckUtils]: 5: Hoare triple {308#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {308#true} is VALID [2022-04-27 13:02:45,421 INFO L272 TraceCheckUtils]: 6: Hoare triple {308#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,421 INFO L290 TraceCheckUtils]: 7: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,422 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,422 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {308#true} {308#true} #79#return; {308#true} is VALID [2022-04-27 13:02:45,422 INFO L290 TraceCheckUtils]: 11: Hoare triple {308#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {308#true} is VALID [2022-04-27 13:02:45,422 INFO L272 TraceCheckUtils]: 12: Hoare triple {308#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,423 INFO L290 TraceCheckUtils]: 14: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,423 INFO L290 TraceCheckUtils]: 15: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,423 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {308#true} {308#true} #81#return; {308#true} is VALID [2022-04-27 13:02:45,423 INFO L272 TraceCheckUtils]: 17: Hoare triple {308#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,423 INFO L290 TraceCheckUtils]: 18: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,423 INFO L290 TraceCheckUtils]: 19: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,424 INFO L290 TraceCheckUtils]: 20: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,424 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {308#true} {308#true} #83#return; {308#true} is VALID [2022-04-27 13:02:45,424 INFO L272 TraceCheckUtils]: 22: Hoare triple {308#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,424 INFO L290 TraceCheckUtils]: 23: Hoare triple {308#true} ~cond := #in~cond; {382#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:45,425 INFO L290 TraceCheckUtils]: 24: Hoare triple {382#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {386#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:45,425 INFO L290 TraceCheckUtils]: 25: Hoare triple {386#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {386#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:45,426 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {386#(not (= |assume_abort_if_not_#in~cond| 0))} {308#true} #85#return; {393#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:45,427 INFO L290 TraceCheckUtils]: 27: Hoare triple {393#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,427 INFO L272 TraceCheckUtils]: 28: Hoare triple {397#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,427 INFO L290 TraceCheckUtils]: 29: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,427 INFO L290 TraceCheckUtils]: 30: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,427 INFO L290 TraceCheckUtils]: 31: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,428 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {308#true} {397#(<= 1 main_~b~0)} #87#return; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,428 INFO L272 TraceCheckUtils]: 33: Hoare triple {397#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,428 INFO L290 TraceCheckUtils]: 34: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,428 INFO L290 TraceCheckUtils]: 35: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,428 INFO L290 TraceCheckUtils]: 36: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,429 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {308#true} {397#(<= 1 main_~b~0)} #89#return; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,429 INFO L290 TraceCheckUtils]: 38: Hoare triple {397#(<= 1 main_~b~0)} assume !false; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,430 INFO L290 TraceCheckUtils]: 39: Hoare triple {397#(<= 1 main_~b~0)} assume !(0 != ~b~0); {309#false} is VALID [2022-04-27 13:02:45,430 INFO L272 TraceCheckUtils]: 40: Hoare triple {309#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {309#false} is VALID [2022-04-27 13:02:45,430 INFO L290 TraceCheckUtils]: 41: Hoare triple {309#false} ~cond := #in~cond; {309#false} is VALID [2022-04-27 13:02:45,430 INFO L290 TraceCheckUtils]: 42: Hoare triple {309#false} assume 0 == ~cond; {309#false} is VALID [2022-04-27 13:02:45,431 INFO L290 TraceCheckUtils]: 43: Hoare triple {309#false} assume !false; {309#false} is VALID [2022-04-27 13:02:45,431 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-27 13:02:45,431 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:45,691 INFO L290 TraceCheckUtils]: 43: Hoare triple {309#false} assume !false; {309#false} is VALID [2022-04-27 13:02:45,691 INFO L290 TraceCheckUtils]: 42: Hoare triple {309#false} assume 0 == ~cond; {309#false} is VALID [2022-04-27 13:02:45,692 INFO L290 TraceCheckUtils]: 41: Hoare triple {309#false} ~cond := #in~cond; {309#false} is VALID [2022-04-27 13:02:45,692 INFO L272 TraceCheckUtils]: 40: Hoare triple {309#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {309#false} is VALID [2022-04-27 13:02:45,692 INFO L290 TraceCheckUtils]: 39: Hoare triple {397#(<= 1 main_~b~0)} assume !(0 != ~b~0); {309#false} is VALID [2022-04-27 13:02:45,693 INFO L290 TraceCheckUtils]: 38: Hoare triple {397#(<= 1 main_~b~0)} assume !false; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,693 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {308#true} {397#(<= 1 main_~b~0)} #89#return; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,693 INFO L290 TraceCheckUtils]: 36: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,694 INFO L290 TraceCheckUtils]: 35: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,694 INFO L290 TraceCheckUtils]: 34: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,694 INFO L272 TraceCheckUtils]: 33: Hoare triple {397#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,695 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {308#true} {397#(<= 1 main_~b~0)} #87#return; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,695 INFO L290 TraceCheckUtils]: 31: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,695 INFO L290 TraceCheckUtils]: 30: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,695 INFO L290 TraceCheckUtils]: 29: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,695 INFO L272 TraceCheckUtils]: 28: Hoare triple {397#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {393#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {397#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:45,697 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {386#(not (= |assume_abort_if_not_#in~cond| 0))} {308#true} #85#return; {393#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:45,697 INFO L290 TraceCheckUtils]: 25: Hoare triple {386#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {386#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:45,697 INFO L290 TraceCheckUtils]: 24: Hoare triple {506#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {386#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:45,698 INFO L290 TraceCheckUtils]: 23: Hoare triple {308#true} ~cond := #in~cond; {506#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 13:02:45,698 INFO L272 TraceCheckUtils]: 22: Hoare triple {308#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,698 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {308#true} {308#true} #83#return; {308#true} is VALID [2022-04-27 13:02:45,698 INFO L290 TraceCheckUtils]: 20: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,699 INFO L290 TraceCheckUtils]: 19: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,699 INFO L290 TraceCheckUtils]: 18: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,699 INFO L272 TraceCheckUtils]: 17: Hoare triple {308#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,699 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {308#true} {308#true} #81#return; {308#true} is VALID [2022-04-27 13:02:45,699 INFO L290 TraceCheckUtils]: 15: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,699 INFO L290 TraceCheckUtils]: 14: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,699 INFO L290 TraceCheckUtils]: 13: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,700 INFO L272 TraceCheckUtils]: 12: Hoare triple {308#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,700 INFO L290 TraceCheckUtils]: 11: Hoare triple {308#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {308#true} is VALID [2022-04-27 13:02:45,700 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {308#true} {308#true} #79#return; {308#true} is VALID [2022-04-27 13:02:45,700 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,700 INFO L290 TraceCheckUtils]: 8: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:45,700 INFO L290 TraceCheckUtils]: 7: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:45,700 INFO L272 TraceCheckUtils]: 6: Hoare triple {308#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:45,701 INFO L290 TraceCheckUtils]: 5: Hoare triple {308#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {308#true} is VALID [2022-04-27 13:02:45,701 INFO L272 TraceCheckUtils]: 4: Hoare triple {308#true} call #t~ret6 := main(); {308#true} is VALID [2022-04-27 13:02:45,701 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {308#true} {308#true} #103#return; {308#true} is VALID [2022-04-27 13:02:45,701 INFO L290 TraceCheckUtils]: 2: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:45,701 INFO L290 TraceCheckUtils]: 1: Hoare triple {308#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); {308#true} is VALID [2022-04-27 13:02:45,701 INFO L272 TraceCheckUtils]: 0: Hoare triple {308#true} call ULTIMATE.init(); {308#true} is VALID [2022-04-27 13:02:45,702 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-27 13:02:45,702 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:45,702 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [322517186] [2022-04-27 13:02:45,703 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:45,703 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [235475464] [2022-04-27 13:02:45,705 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [235475464] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:02:45,705 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:02:45,706 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-27 13:02:45,706 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2084920365] [2022-04-27 13:02:45,706 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:45,707 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-27 13:02:45,708 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:45,708 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:02:45,738 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-27 13:02:45,738 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 13:02:45,739 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:45,739 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 13:02:45,739 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-27 13:02:45,740 INFO L87 Difference]: Start difference. First operand 35 states and 46 transitions. Second operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:02:46,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:46,064 INFO L93 Difference]: Finished difference Result 52 states and 69 transitions. [2022-04-27 13:02:46,064 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:02:46,064 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 44 [2022-04-27 13:02:46,065 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:46,065 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:02:46,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-27 13:02:46,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:02:46,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-27 13:02:46,072 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-27 13:02:46,131 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:46,134 INFO L225 Difference]: With dead ends: 52 [2022-04-27 13:02:46,134 INFO L226 Difference]: Without dead ends: 44 [2022-04-27 13:02:46,134 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 81 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:02:46,136 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 19 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:46,137 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [24 Valid, 128 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:02:46,139 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-27 13:02:46,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-27 13:02:46,161 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:46,161 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:46,163 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:46,164 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:46,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:46,173 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-27 13:02:46,173 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-27 13:02:46,177 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:46,177 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:46,178 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-27 13:02:46,179 INFO L87 Difference]: Start difference. First operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 44 states. [2022-04-27 13:02:46,188 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:46,188 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-27 13:02:46,188 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-27 13:02:46,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:46,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:46,191 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:46,191 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:46,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 19 states have (on average 1.1578947368421053) internal successors, (22), 20 states have internal predecessors, (22), 14 states have call successors, (14), 4 states have call predecessors, (14), 3 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:46,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-27 13:02:46,204 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 44 [2022-04-27 13:02:46,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:46,205 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-27 13:02:46,205 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:02:46,205 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-27 13:02:46,208 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 13:02:46,208 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:46,208 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-27 13:02:46,241 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-27 13:02:46,423 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-27 13:02:46,424 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:46,424 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:46,424 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 1 times [2022-04-27 13:02:46,425 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:46,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1223937656] [2022-04-27 13:02:46,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:46,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:46,463 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:46,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1220372755] [2022-04-27 13:02:46,464 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:46,464 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:46,464 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:46,470 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-27 13:02:46,472 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-27 13:02:46,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:46,537 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 13:02:46,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:46,556 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:46,754 INFO L272 TraceCheckUtils]: 0: Hoare triple {809#true} call ULTIMATE.init(); {809#true} is VALID [2022-04-27 13:02:46,755 INFO L290 TraceCheckUtils]: 1: Hoare triple {809#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); {809#true} is VALID [2022-04-27 13:02:46,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,755 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {809#true} {809#true} #103#return; {809#true} is VALID [2022-04-27 13:02:46,755 INFO L272 TraceCheckUtils]: 4: Hoare triple {809#true} call #t~ret6 := main(); {809#true} is VALID [2022-04-27 13:02:46,755 INFO L290 TraceCheckUtils]: 5: Hoare triple {809#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {809#true} is VALID [2022-04-27 13:02:46,756 INFO L272 TraceCheckUtils]: 6: Hoare triple {809#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,756 INFO L290 TraceCheckUtils]: 7: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,756 INFO L290 TraceCheckUtils]: 8: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,756 INFO L290 TraceCheckUtils]: 9: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,756 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {809#true} {809#true} #79#return; {809#true} is VALID [2022-04-27 13:02:46,756 INFO L290 TraceCheckUtils]: 11: Hoare triple {809#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {809#true} is VALID [2022-04-27 13:02:46,757 INFO L272 TraceCheckUtils]: 12: Hoare triple {809#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,757 INFO L290 TraceCheckUtils]: 13: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,757 INFO L290 TraceCheckUtils]: 14: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,757 INFO L290 TraceCheckUtils]: 15: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,757 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {809#true} {809#true} #81#return; {809#true} is VALID [2022-04-27 13:02:46,757 INFO L272 TraceCheckUtils]: 17: Hoare triple {809#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,758 INFO L290 TraceCheckUtils]: 19: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,758 INFO L290 TraceCheckUtils]: 20: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,758 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {809#true} {809#true} #83#return; {809#true} is VALID [2022-04-27 13:02:46,758 INFO L272 TraceCheckUtils]: 22: Hoare triple {809#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,759 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#true} ~cond := #in~cond; {883#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:46,759 INFO L290 TraceCheckUtils]: 24: Hoare triple {883#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {887#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:46,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {887#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {887#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:46,760 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {887#(not (= |assume_abort_if_not_#in~cond| 0))} {809#true} #85#return; {894#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:46,762 INFO L290 TraceCheckUtils]: 27: Hoare triple {894#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {898#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:46,762 INFO L272 TraceCheckUtils]: 28: Hoare triple {898#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,763 INFO L290 TraceCheckUtils]: 29: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,763 INFO L290 TraceCheckUtils]: 30: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,763 INFO L290 TraceCheckUtils]: 31: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,763 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {809#true} {898#(<= 1 main_~b~0)} #87#return; {898#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:46,764 INFO L272 TraceCheckUtils]: 33: Hoare triple {898#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,764 INFO L290 TraceCheckUtils]: 34: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,764 INFO L290 TraceCheckUtils]: 35: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,764 INFO L290 TraceCheckUtils]: 36: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,764 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {809#true} {898#(<= 1 main_~b~0)} #89#return; {898#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:46,765 INFO L290 TraceCheckUtils]: 38: Hoare triple {898#(<= 1 main_~b~0)} assume !false; {898#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:46,765 INFO L290 TraceCheckUtils]: 39: Hoare triple {898#(<= 1 main_~b~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {935#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 13:02:46,766 INFO L290 TraceCheckUtils]: 40: Hoare triple {935#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !false; {935#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 13:02:46,767 INFO L272 TraceCheckUtils]: 41: Hoare triple {935#(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)); {942#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:46,767 INFO L290 TraceCheckUtils]: 42: Hoare triple {942#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {946#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:46,768 INFO L290 TraceCheckUtils]: 43: Hoare triple {946#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {810#false} is VALID [2022-04-27 13:02:46,768 INFO L290 TraceCheckUtils]: 44: Hoare triple {810#false} assume !false; {810#false} is VALID [2022-04-27 13:02:46,768 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-27 13:02:46,768 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:46,987 INFO L290 TraceCheckUtils]: 44: Hoare triple {810#false} assume !false; {810#false} is VALID [2022-04-27 13:02:46,988 INFO L290 TraceCheckUtils]: 43: Hoare triple {946#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {810#false} is VALID [2022-04-27 13:02:46,988 INFO L290 TraceCheckUtils]: 42: Hoare triple {942#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {946#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:46,989 INFO L272 TraceCheckUtils]: 41: Hoare triple {962#(= 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)); {942#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:46,989 INFO L290 TraceCheckUtils]: 40: Hoare triple {962#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !false; {962#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-27 13:02:46,990 INFO L290 TraceCheckUtils]: 39: Hoare triple {809#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {962#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-27 13:02:46,990 INFO L290 TraceCheckUtils]: 38: Hoare triple {809#true} assume !false; {809#true} is VALID [2022-04-27 13:02:46,990 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {809#true} {809#true} #89#return; {809#true} is VALID [2022-04-27 13:02:46,990 INFO L290 TraceCheckUtils]: 36: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,990 INFO L290 TraceCheckUtils]: 35: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,991 INFO L290 TraceCheckUtils]: 34: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,991 INFO L272 TraceCheckUtils]: 33: Hoare triple {809#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,991 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {809#true} {809#true} #87#return; {809#true} is VALID [2022-04-27 13:02:46,991 INFO L290 TraceCheckUtils]: 31: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,991 INFO L290 TraceCheckUtils]: 30: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,991 INFO L290 TraceCheckUtils]: 29: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,991 INFO L272 TraceCheckUtils]: 28: Hoare triple {809#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,992 INFO L290 TraceCheckUtils]: 27: Hoare triple {809#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {809#true} is VALID [2022-04-27 13:02:46,992 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {809#true} {809#true} #85#return; {809#true} is VALID [2022-04-27 13:02:46,992 INFO L290 TraceCheckUtils]: 25: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,992 INFO L290 TraceCheckUtils]: 24: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,992 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,992 INFO L272 TraceCheckUtils]: 22: Hoare triple {809#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,992 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {809#true} {809#true} #83#return; {809#true} is VALID [2022-04-27 13:02:46,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,993 INFO L290 TraceCheckUtils]: 19: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,993 INFO L272 TraceCheckUtils]: 17: Hoare triple {809#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,993 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {809#true} {809#true} #81#return; {809#true} is VALID [2022-04-27 13:02:46,993 INFO L290 TraceCheckUtils]: 15: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,994 INFO L290 TraceCheckUtils]: 13: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,994 INFO L272 TraceCheckUtils]: 12: Hoare triple {809#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,994 INFO L290 TraceCheckUtils]: 11: Hoare triple {809#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {809#true} is VALID [2022-04-27 13:02:46,994 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {809#true} {809#true} #79#return; {809#true} is VALID [2022-04-27 13:02:46,994 INFO L290 TraceCheckUtils]: 9: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,994 INFO L290 TraceCheckUtils]: 8: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:46,994 INFO L290 TraceCheckUtils]: 7: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:46,995 INFO L272 TraceCheckUtils]: 6: Hoare triple {809#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:46,995 INFO L290 TraceCheckUtils]: 5: Hoare triple {809#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {809#true} is VALID [2022-04-27 13:02:46,995 INFO L272 TraceCheckUtils]: 4: Hoare triple {809#true} call #t~ret6 := main(); {809#true} is VALID [2022-04-27 13:02:46,995 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {809#true} {809#true} #103#return; {809#true} is VALID [2022-04-27 13:02:46,995 INFO L290 TraceCheckUtils]: 2: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:46,995 INFO L290 TraceCheckUtils]: 1: Hoare triple {809#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); {809#true} is VALID [2022-04-27 13:02:46,996 INFO L272 TraceCheckUtils]: 0: Hoare triple {809#true} call ULTIMATE.init(); {809#true} is VALID [2022-04-27 13:02:46,996 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-27 13:02:46,996 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:46,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1223937656] [2022-04-27 13:02:46,996 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:46,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1220372755] [2022-04-27 13:02:46,997 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1220372755] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:02:46,997 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:02:46,997 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-27 13:02:46,997 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [665195688] [2022-04-27 13:02:46,997 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:46,998 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-27 13:02:46,998 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:46,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-27 13:02:47,020 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:47,021 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:02:47,021 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:47,021 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:02:47,021 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:47,022 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-27 13:02:47,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:47,218 INFO L93 Difference]: Finished difference Result 43 states and 53 transitions. [2022-04-27 13:02:47,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:02:47,219 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) Word has length 45 [2022-04-27 13:02:47,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:47,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-27 13:02:47,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-27 13:02:47,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-27 13:02:47,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-27 13:02:47,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-27 13:02:47,272 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:47,274 INFO L225 Difference]: With dead ends: 43 [2022-04-27 13:02:47,274 INFO L226 Difference]: Without dead ends: 41 [2022-04-27 13:02:47,274 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:02:47,275 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:47,276 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 137 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:02:47,276 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-27 13:02:47,295 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-04-27 13:02:47,296 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:47,296 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 41 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 14 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:47,296 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 41 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 14 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:47,297 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 41 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 14 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:47,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:47,299 INFO L93 Difference]: Finished difference Result 41 states and 51 transitions. [2022-04-27 13:02:47,299 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 13:02:47,299 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:47,299 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:47,300 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 14 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 41 states. [2022-04-27 13:02:47,300 INFO L87 Difference]: Start difference. First operand has 41 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 14 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand 41 states. [2022-04-27 13:02:47,302 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:47,302 INFO L93 Difference]: Finished difference Result 41 states and 51 transitions. [2022-04-27 13:02:47,302 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 13:02:47,302 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:47,302 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:47,303 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:47,303 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:47,303 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 14 states have call successors, (14), 5 states have call predecessors, (14), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 13:02:47,305 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 51 transitions. [2022-04-27 13:02:47,305 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 51 transitions. Word has length 45 [2022-04-27 13:02:47,305 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:47,305 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 51 transitions. [2022-04-27 13:02:47,305 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.8) internal successors, (14), 4 states have internal predecessors, (14), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 1 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-27 13:02:47,305 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 13:02:47,306 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 13:02:47,306 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:47,306 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 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-27 13:02:47,328 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-27 13:02:47,522 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-27 13:02:47,522 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:47,523 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:47,523 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 1 times [2022-04-27 13:02:47,523 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:47,523 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [702776342] [2022-04-27 13:02:47,523 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:47,523 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:47,545 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:47,545 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1946824595] [2022-04-27 13:02:47,545 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:47,545 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:47,546 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:47,558 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-27 13:02:47,571 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-27 13:02:47,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:47,617 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 13:02:47,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:47,635 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:48,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {1300#true} call ULTIMATE.init(); {1300#true} is VALID [2022-04-27 13:02:48,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {1300#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); {1300#true} is VALID [2022-04-27 13:02:48,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:48,662 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1300#true} {1300#true} #103#return; {1300#true} is VALID [2022-04-27 13:02:48,663 INFO L272 TraceCheckUtils]: 4: Hoare triple {1300#true} call #t~ret6 := main(); {1300#true} is VALID [2022-04-27 13:02:48,663 INFO L290 TraceCheckUtils]: 5: Hoare triple {1300#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1300#true} is VALID [2022-04-27 13:02:48,665 INFO L272 TraceCheckUtils]: 6: Hoare triple {1300#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,667 INFO L290 TraceCheckUtils]: 7: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:48,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:48,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:48,668 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1300#true} {1300#true} #79#return; {1300#true} is VALID [2022-04-27 13:02:48,668 INFO L290 TraceCheckUtils]: 11: Hoare triple {1300#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1300#true} is VALID [2022-04-27 13:02:48,668 INFO L272 TraceCheckUtils]: 12: Hoare triple {1300#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,669 INFO L290 TraceCheckUtils]: 13: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:48,669 INFO L290 TraceCheckUtils]: 14: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:48,669 INFO L290 TraceCheckUtils]: 15: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:48,669 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1300#true} {1300#true} #81#return; {1300#true} is VALID [2022-04-27 13:02:48,669 INFO L272 TraceCheckUtils]: 17: Hoare triple {1300#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,670 INFO L290 TraceCheckUtils]: 18: Hoare triple {1300#true} ~cond := #in~cond; {1359#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:48,670 INFO L290 TraceCheckUtils]: 19: Hoare triple {1359#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1363#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:48,670 INFO L290 TraceCheckUtils]: 20: Hoare triple {1363#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1363#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:48,671 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1363#(not (= |assume_abort_if_not_#in~cond| 0))} {1300#true} #83#return; {1370#(<= 1 main_~x~0)} is VALID [2022-04-27 13:02:48,671 INFO L272 TraceCheckUtils]: 22: Hoare triple {1370#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,671 INFO L290 TraceCheckUtils]: 23: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:48,671 INFO L290 TraceCheckUtils]: 24: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:48,671 INFO L290 TraceCheckUtils]: 25: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:48,672 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1300#true} {1370#(<= 1 main_~x~0)} #85#return; {1370#(<= 1 main_~x~0)} is VALID [2022-04-27 13:02:48,672 INFO L290 TraceCheckUtils]: 27: Hoare triple {1370#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,673 INFO L272 TraceCheckUtils]: 28: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,673 INFO L290 TraceCheckUtils]: 29: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:48,673 INFO L290 TraceCheckUtils]: 30: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:48,673 INFO L290 TraceCheckUtils]: 31: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:48,674 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1300#true} {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,674 INFO L272 TraceCheckUtils]: 33: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,674 INFO L290 TraceCheckUtils]: 34: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:48,674 INFO L290 TraceCheckUtils]: 35: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:48,674 INFO L290 TraceCheckUtils]: 36: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:48,675 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1300#true} {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,675 INFO L290 TraceCheckUtils]: 38: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,676 INFO L290 TraceCheckUtils]: 39: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,676 INFO L290 TraceCheckUtils]: 40: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,676 INFO L272 TraceCheckUtils]: 41: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:48,677 INFO L290 TraceCheckUtils]: 42: Hoare triple {1300#true} ~cond := #in~cond; {1435#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:48,677 INFO L290 TraceCheckUtils]: 43: Hoare triple {1435#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:02:48,677 INFO L290 TraceCheckUtils]: 44: Hoare triple {1439#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:02:48,678 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1439#(not (= |__VERIFIER_assert_#in~cond| 0))} {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {1389#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:48,679 INFO L272 TraceCheckUtils]: 46: Hoare triple {1389#(and (= main_~r~0 0) (<= 1 main_~x~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)); {1449#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:48,679 INFO L290 TraceCheckUtils]: 47: Hoare triple {1449#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1453#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:48,679 INFO L290 TraceCheckUtils]: 48: Hoare triple {1453#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1301#false} is VALID [2022-04-27 13:02:48,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {1301#false} assume !false; {1301#false} is VALID [2022-04-27 13:02:48,680 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 7 proven. 10 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-27 13:02:48,680 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:27,459 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:27,459 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [702776342] [2022-04-27 13:03:27,459 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:27,459 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1946824595] [2022-04-27 13:03:27,459 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1946824595] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:03:27,459 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:03:27,460 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-27 13:03:27,460 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1351741714] [2022-04-27 13:03:27,460 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:27,460 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-27 13:03:27,461 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:27,461 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 13:03:27,490 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:27,490 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:03:27,490 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:27,490 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:03:27,490 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:03:27,491 INFO L87 Difference]: Start difference. First operand 41 states and 51 transitions. Second operand has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 13:03:28,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:28,132 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-27 13:03:28,132 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 13:03:28,132 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-27 13:03:28,132 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:28,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 13:03:28,134 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-27 13:03:28,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 13:03:28,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-27 13:03:28,136 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 65 transitions. [2022-04-27 13:03:28,201 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:28,203 INFO L225 Difference]: With dead ends: 54 [2022-04-27 13:03:28,203 INFO L226 Difference]: Without dead ends: 52 [2022-04-27 13:03:28,203 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 44 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:03:28,204 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 25 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 214 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 214 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:28,204 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 163 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 214 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 13:03:28,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-27 13:03:28,233 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 51. [2022-04-27 13:03:28,233 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:28,233 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 51 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 28 states have internal predecessors, (31), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:28,233 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 51 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 28 states have internal predecessors, (31), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:28,234 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 51 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 28 states have internal predecessors, (31), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:28,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:28,236 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-27 13:03:28,236 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-27 13:03:28,237 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:28,237 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:28,237 INFO L74 IsIncluded]: Start isIncluded. First operand has 51 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 28 states have internal predecessors, (31), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 52 states. [2022-04-27 13:03:28,237 INFO L87 Difference]: Start difference. First operand has 51 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 28 states have internal predecessors, (31), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 52 states. [2022-04-27 13:03:28,239 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:28,240 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-27 13:03:28,240 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-27 13:03:28,240 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:28,240 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:28,240 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:28,240 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:28,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 51 states, 27 states have (on average 1.1481481481481481) internal successors, (31), 28 states have internal predecessors, (31), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:28,242 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 65 transitions. [2022-04-27 13:03:28,243 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 65 transitions. Word has length 50 [2022-04-27 13:03:28,243 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:28,243 INFO L495 AbstractCegarLoop]: Abstraction has 51 states and 65 transitions. [2022-04-27 13:03:28,243 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.0) internal successors, (20), 8 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-27 13:03:28,243 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-27 13:03:28,244 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 13:03:28,244 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:28,244 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 3, 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-27 13:03:28,268 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-27 13:03:28,457 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-27 13:03:28,457 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:28,458 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:28,458 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 1 times [2022-04-27 13:03:28,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:28,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1899244870] [2022-04-27 13:03:28,458 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:28,458 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:28,477 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:28,477 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2108866192] [2022-04-27 13:03:28,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:28,478 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:28,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:28,479 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-27 13:03:28,483 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-27 13:03:28,531 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:28,532 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 13:03:28,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:28,555 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:28,979 INFO L272 TraceCheckUtils]: 0: Hoare triple {1746#true} call ULTIMATE.init(); {1746#true} is VALID [2022-04-27 13:03:28,979 INFO L290 TraceCheckUtils]: 1: Hoare triple {1746#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); {1746#true} is VALID [2022-04-27 13:03:28,979 INFO L290 TraceCheckUtils]: 2: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,979 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1746#true} {1746#true} #103#return; {1746#true} is VALID [2022-04-27 13:03:28,979 INFO L272 TraceCheckUtils]: 4: Hoare triple {1746#true} call #t~ret6 := main(); {1746#true} is VALID [2022-04-27 13:03:28,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {1746#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1746#true} is VALID [2022-04-27 13:03:28,979 INFO L272 TraceCheckUtils]: 6: Hoare triple {1746#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,980 INFO L290 TraceCheckUtils]: 7: Hoare triple {1746#true} ~cond := #in~cond; {1772#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:03:28,980 INFO L290 TraceCheckUtils]: 8: Hoare triple {1772#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1776#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:28,981 INFO L290 TraceCheckUtils]: 9: Hoare triple {1776#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1776#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:28,981 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1776#(not (= |assume_abort_if_not_#in~cond| 0))} {1746#true} #79#return; {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 13:03:28,982 INFO L290 TraceCheckUtils]: 11: Hoare triple {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 13:03:28,982 INFO L272 TraceCheckUtils]: 12: Hoare triple {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:28,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:28,982 INFO L290 TraceCheckUtils]: 15: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,983 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1746#true} {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} #81#return; {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 13:03:28,983 INFO L272 TraceCheckUtils]: 17: Hoare triple {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,983 INFO L290 TraceCheckUtils]: 18: Hoare triple {1746#true} ~cond := #in~cond; {1772#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:03:28,984 INFO L290 TraceCheckUtils]: 19: Hoare triple {1772#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1776#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:28,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {1776#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1776#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:28,984 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1776#(not (= |assume_abort_if_not_#in~cond| 0))} {1783#(and (<= 0 main_~x~0) (<= main_~x~0 50))} #83#return; {1817#(and (<= 1 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 13:03:28,985 INFO L272 TraceCheckUtils]: 22: Hoare triple {1817#(and (<= 1 main_~x~0) (<= main_~x~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,985 INFO L290 TraceCheckUtils]: 23: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:28,985 INFO L290 TraceCheckUtils]: 24: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:28,985 INFO L290 TraceCheckUtils]: 25: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,985 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1746#true} {1817#(and (<= 1 main_~x~0) (<= main_~x~0 50))} #85#return; {1817#(and (<= 1 main_~x~0) (<= main_~x~0 50))} is VALID [2022-04-27 13:03:28,986 INFO L290 TraceCheckUtils]: 27: Hoare triple {1817#(and (<= 1 main_~x~0) (<= main_~x~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,986 INFO L272 TraceCheckUtils]: 28: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,986 INFO L290 TraceCheckUtils]: 29: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:28,986 INFO L290 TraceCheckUtils]: 30: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:28,986 INFO L290 TraceCheckUtils]: 31: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,986 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #87#return; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,987 INFO L272 TraceCheckUtils]: 33: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,987 INFO L290 TraceCheckUtils]: 34: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:28,987 INFO L290 TraceCheckUtils]: 35: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:28,987 INFO L290 TraceCheckUtils]: 36: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,987 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #89#return; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,988 INFO L290 TraceCheckUtils]: 38: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,990 INFO L290 TraceCheckUtils]: 39: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,990 INFO L290 TraceCheckUtils]: 40: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !false; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,990 INFO L272 TraceCheckUtils]: 41: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,990 INFO L290 TraceCheckUtils]: 42: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:28,990 INFO L290 TraceCheckUtils]: 43: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:28,991 INFO L290 TraceCheckUtils]: 44: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,991 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #91#return; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,991 INFO L272 TraceCheckUtils]: 46: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:28,991 INFO L290 TraceCheckUtils]: 47: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:28,991 INFO L290 TraceCheckUtils]: 48: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:28,992 INFO L290 TraceCheckUtils]: 49: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:28,993 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #93#return; {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:28,994 INFO L272 TraceCheckUtils]: 51: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 50) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {1909#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:28,994 INFO L290 TraceCheckUtils]: 52: Hoare triple {1909#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1913#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:28,995 INFO L290 TraceCheckUtils]: 53: Hoare triple {1913#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1747#false} is VALID [2022-04-27 13:03:28,995 INFO L290 TraceCheckUtils]: 54: Hoare triple {1747#false} assume !false; {1747#false} is VALID [2022-04-27 13:03:28,995 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 7 proven. 21 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-27 13:03:28,995 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:29,315 INFO L290 TraceCheckUtils]: 54: Hoare triple {1747#false} assume !false; {1747#false} is VALID [2022-04-27 13:03:29,316 INFO L290 TraceCheckUtils]: 53: Hoare triple {1913#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1747#false} is VALID [2022-04-27 13:03:29,316 INFO L290 TraceCheckUtils]: 52: Hoare triple {1909#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1913#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:29,317 INFO L272 TraceCheckUtils]: 51: Hoare triple {1929#(= 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)); {1909#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:29,318 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1746#true} {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,318 INFO L290 TraceCheckUtils]: 49: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,318 INFO L290 TraceCheckUtils]: 48: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,318 INFO L290 TraceCheckUtils]: 47: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,319 INFO L272 TraceCheckUtils]: 46: Hoare triple {1929#(= 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)); {1746#true} is VALID [2022-04-27 13:03:29,319 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1746#true} {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #91#return; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,320 INFO L290 TraceCheckUtils]: 44: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,320 INFO L290 TraceCheckUtils]: 43: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,320 INFO L290 TraceCheckUtils]: 42: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,320 INFO L272 TraceCheckUtils]: 41: Hoare triple {1929#(= 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)); {1746#true} is VALID [2022-04-27 13:03:29,320 INFO L290 TraceCheckUtils]: 40: Hoare triple {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,321 INFO L290 TraceCheckUtils]: 39: Hoare triple {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,321 INFO L290 TraceCheckUtils]: 38: Hoare triple {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,322 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1746#true} {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #89#return; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,322 INFO L290 TraceCheckUtils]: 36: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,322 INFO L290 TraceCheckUtils]: 35: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,322 INFO L290 TraceCheckUtils]: 34: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,322 INFO L272 TraceCheckUtils]: 33: Hoare triple {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:29,323 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1746#true} {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #87#return; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,323 INFO L290 TraceCheckUtils]: 31: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,323 INFO L290 TraceCheckUtils]: 30: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,323 INFO L290 TraceCheckUtils]: 29: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,323 INFO L272 TraceCheckUtils]: 28: Hoare triple {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:29,324 INFO L290 TraceCheckUtils]: 27: Hoare triple {1746#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1929#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:29,324 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1746#true} {1746#true} #85#return; {1746#true} is VALID [2022-04-27 13:03:29,324 INFO L290 TraceCheckUtils]: 25: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,324 INFO L290 TraceCheckUtils]: 24: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,324 INFO L290 TraceCheckUtils]: 23: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L272 TraceCheckUtils]: 22: Hoare triple {1746#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1746#true} {1746#true} #83#return; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L290 TraceCheckUtils]: 20: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L290 TraceCheckUtils]: 19: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L290 TraceCheckUtils]: 18: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L272 TraceCheckUtils]: 17: Hoare triple {1746#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1746#true} {1746#true} #81#return; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L290 TraceCheckUtils]: 15: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L290 TraceCheckUtils]: 14: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L290 TraceCheckUtils]: 13: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,325 INFO L272 TraceCheckUtils]: 12: Hoare triple {1746#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 11: Hoare triple {1746#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1746#true} {1746#true} #79#return; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 9: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 8: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 7: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L272 TraceCheckUtils]: 6: Hoare triple {1746#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {1746#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L272 TraceCheckUtils]: 4: Hoare triple {1746#true} call #t~ret6 := main(); {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1746#true} {1746#true} #103#return; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 2: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:03:29,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {1746#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); {1746#true} is VALID [2022-04-27 13:03:29,327 INFO L272 TraceCheckUtils]: 0: Hoare triple {1746#true} call ULTIMATE.init(); {1746#true} is VALID [2022-04-27 13:03:29,327 INFO L134 CoverageAnalysis]: Checked inductivity of 68 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2022-04-27 13:03:29,327 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:29,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1899244870] [2022-04-27 13:03:29,327 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:29,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2108866192] [2022-04-27 13:03:29,327 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2108866192] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:03:29,327 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:03:29,327 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-27 13:03:29,328 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [103856643] [2022-04-27 13:03:29,328 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:29,328 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 55 [2022-04-27 13:03:29,328 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:29,329 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-27 13:03:29,358 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:29,358 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:29,358 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:29,359 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:29,359 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:03:29,359 INFO L87 Difference]: Start difference. First operand 51 states and 65 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-27 13:03:29,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:29,652 INFO L93 Difference]: Finished difference Result 58 states and 71 transitions. [2022-04-27 13:03:29,652 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:03:29,652 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 55 [2022-04-27 13:03:29,652 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:29,653 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-27 13:03:29,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:03:29,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-27 13:03:29,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:03:29,656 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 13:03:29,710 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:29,712 INFO L225 Difference]: With dead ends: 58 [2022-04-27 13:03:29,712 INFO L226 Difference]: Without dead ends: 56 [2022-04-27 13:03:29,713 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 100 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:03:29,713 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 7 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 149 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.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:29,714 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [9 Valid, 149 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:03:29,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-27 13:03:29,746 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2022-04-27 13:03:29,747 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:29,747 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 55 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 31 states have internal predecessors, (34), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:29,747 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 55 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 31 states have internal predecessors, (34), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:29,747 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 55 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 31 states have internal predecessors, (34), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:29,750 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:29,750 INFO L93 Difference]: Finished difference Result 56 states and 69 transitions. [2022-04-27 13:03:29,750 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 69 transitions. [2022-04-27 13:03:29,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:29,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:29,751 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 31 states have internal predecessors, (34), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 56 states. [2022-04-27 13:03:29,751 INFO L87 Difference]: Start difference. First operand has 55 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 31 states have internal predecessors, (34), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 56 states. [2022-04-27 13:03:29,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:29,753 INFO L93 Difference]: Finished difference Result 56 states and 69 transitions. [2022-04-27 13:03:29,753 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 69 transitions. [2022-04-27 13:03:29,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:29,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:29,753 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:29,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:29,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 30 states have (on average 1.1333333333333333) internal successors, (34), 31 states have internal predecessors, (34), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:03:29,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 68 transitions. [2022-04-27 13:03:29,756 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 68 transitions. Word has length 55 [2022-04-27 13:03:29,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:29,756 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 68 transitions. [2022-04-27 13:03:29,756 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-27 13:03:29,756 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-27 13:03:29,757 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-27 13:03:29,757 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:29,757 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:29,782 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-27 13:03:29,980 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-27 13:03:29,980 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:29,980 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:29,980 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 1 times [2022-04-27 13:03:29,980 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:29,980 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2077567652] [2022-04-27 13:03:29,981 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:29,981 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:30,000 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:30,000 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1679206076] [2022-04-27 13:03:30,000 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:30,000 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:30,000 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:30,003 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-27 13:03:30,004 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-27 13:03:30,051 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:30,052 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 13:03:30,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:30,068 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:36,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {2370#true} call ULTIMATE.init(); {2370#true} is VALID [2022-04-27 13:03:36,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {2370#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); {2370#true} is VALID [2022-04-27 13:03:36,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2370#true} {2370#true} #103#return; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L272 TraceCheckUtils]: 4: Hoare triple {2370#true} call #t~ret6 := main(); {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 5: Hoare triple {2370#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L272 TraceCheckUtils]: 6: Hoare triple {2370#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 8: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2370#true} {2370#true} #79#return; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 11: Hoare triple {2370#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L272 TraceCheckUtils]: 12: Hoare triple {2370#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 13: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 14: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,433 INFO L290 TraceCheckUtils]: 15: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2370#true} {2370#true} #81#return; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L272 TraceCheckUtils]: 17: Hoare triple {2370#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L290 TraceCheckUtils]: 19: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2370#true} {2370#true} #83#return; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L272 TraceCheckUtils]: 22: Hoare triple {2370#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L290 TraceCheckUtils]: 24: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L290 TraceCheckUtils]: 25: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,434 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2370#true} {2370#true} #85#return; {2370#true} is VALID [2022-04-27 13:03:36,437 INFO L290 TraceCheckUtils]: 27: Hoare triple {2370#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,437 INFO L272 TraceCheckUtils]: 28: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,437 INFO L290 TraceCheckUtils]: 29: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,437 INFO L290 TraceCheckUtils]: 30: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,437 INFO L290 TraceCheckUtils]: 31: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,438 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2370#true} {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #87#return; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,438 INFO L272 TraceCheckUtils]: 33: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,438 INFO L290 TraceCheckUtils]: 34: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,438 INFO L290 TraceCheckUtils]: 35: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,438 INFO L290 TraceCheckUtils]: 36: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,439 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2370#true} {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #89#return; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,439 INFO L290 TraceCheckUtils]: 38: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !false; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,440 INFO L290 TraceCheckUtils]: 39: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,440 INFO L290 TraceCheckUtils]: 40: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !false; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,440 INFO L272 TraceCheckUtils]: 41: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,440 INFO L290 TraceCheckUtils]: 42: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:03:36,441 INFO L290 TraceCheckUtils]: 43: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:03:36,441 INFO L290 TraceCheckUtils]: 44: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:03:36,441 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2370#true} {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #91#return; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,442 INFO L272 TraceCheckUtils]: 46: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,442 INFO L290 TraceCheckUtils]: 47: Hoare triple {2370#true} ~cond := #in~cond; {2517#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:36,442 INFO L290 TraceCheckUtils]: 48: Hoare triple {2517#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:36,443 INFO L290 TraceCheckUtils]: 49: Hoare triple {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:36,443 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #93#return; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,443 INFO L272 TraceCheckUtils]: 51: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:03:36,444 INFO L290 TraceCheckUtils]: 52: Hoare triple {2370#true} ~cond := #in~cond; {2517#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:36,444 INFO L290 TraceCheckUtils]: 53: Hoare triple {2517#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:36,445 INFO L290 TraceCheckUtils]: 54: Hoare triple {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:36,445 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2521#(not (= |__VERIFIER_assert_#in~cond| 0))} {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #95#return; {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-27 13:03:36,446 INFO L272 TraceCheckUtils]: 56: Hoare triple {2456#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2546#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:36,447 INFO L290 TraceCheckUtils]: 57: Hoare triple {2546#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2550#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:36,447 INFO L290 TraceCheckUtils]: 58: Hoare triple {2550#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2371#false} is VALID [2022-04-27 13:03:36,447 INFO L290 TraceCheckUtils]: 59: Hoare triple {2371#false} assume !false; {2371#false} is VALID [2022-04-27 13:03:36,448 INFO L134 CoverageAnalysis]: Checked inductivity of 78 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2022-04-27 13:03:36,448 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:29,001 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:29,001 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2077567652] [2022-04-27 13:04:29,001 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:29,001 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1679206076] [2022-04-27 13:04:29,002 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1679206076] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:04:29,002 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:04:29,002 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-27 13:04:29,002 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [618197533] [2022-04-27 13:04:29,002 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:29,002 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 60 [2022-04-27 13:04:29,003 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:29,003 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-27 13:04:29,037 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:29,037 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 13:04:29,038 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:29,038 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 13:04:29,038 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:04:29,038 INFO L87 Difference]: Start difference. First operand 55 states and 68 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-27 13:04:29,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:29,401 INFO L93 Difference]: Finished difference Result 62 states and 74 transitions. [2022-04-27 13:04:29,401 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 13:04:29,401 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 60 [2022-04-27 13:04:29,401 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:29,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-27 13:04:29,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-27 13:04:29,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-27 13:04:29,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-27 13:04:29,404 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-27 13:04:29,459 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:29,460 INFO L225 Difference]: With dead ends: 62 [2022-04-27 13:04:29,461 INFO L226 Difference]: Without dead ends: 60 [2022-04-27 13:04:29,461 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 56 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:04:29,462 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 12 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 106 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 106 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:29,462 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 138 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 106 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:04:29,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-27 13:04:29,503 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-27 13:04:29,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:29,505 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:04:29,505 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:04:29,506 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:04:29,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:29,508 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-27 13:04:29,508 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 72 transitions. [2022-04-27 13:04:29,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:29,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:29,509 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 60 states. [2022-04-27 13:04:29,509 INFO L87 Difference]: Start difference. First operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 60 states. [2022-04-27 13:04:29,511 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:29,511 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-27 13:04:29,511 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 72 transitions. [2022-04-27 13:04:29,512 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:29,512 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:29,512 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:29,512 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:29,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 33 states have (on average 1.121212121212121) internal successors, (37), 34 states have internal predecessors, (37), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-27 13:04:29,514 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 71 transitions. [2022-04-27 13:04:29,514 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 71 transitions. Word has length 60 [2022-04-27 13:04:29,514 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:29,514 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 71 transitions. [2022-04-27 13:04:29,514 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2022-04-27 13:04:29,514 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 71 transitions. [2022-04-27 13:04:29,515 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-27 13:04:29,515 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:29,515 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:04:29,540 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 13:04:29,738 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-27 13:04:29,738 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:29,738 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:29,738 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 1 times [2022-04-27 13:04:29,739 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:29,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1861999613] [2022-04-27 13:04:29,739 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:29,739 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:29,772 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:29,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [54305645] [2022-04-27 13:04:29,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:29,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:29,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:29,775 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-27 13:04:29,804 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-27 13:04:29,834 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:29,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:04:29,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:29,850 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:30,047 INFO L272 TraceCheckUtils]: 0: Hoare triple {2878#true} call ULTIMATE.init(); {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {2878#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); {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L290 TraceCheckUtils]: 2: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2878#true} {2878#true} #103#return; {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L272 TraceCheckUtils]: 4: Hoare triple {2878#true} call #t~ret6 := main(); {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {2878#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L272 TraceCheckUtils]: 6: Hoare triple {2878#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L290 TraceCheckUtils]: 7: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L290 TraceCheckUtils]: 9: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2878#true} {2878#true} #79#return; {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L290 TraceCheckUtils]: 11: Hoare triple {2878#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L272 TraceCheckUtils]: 12: Hoare triple {2878#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L290 TraceCheckUtils]: 13: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L290 TraceCheckUtils]: 14: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L290 TraceCheckUtils]: 15: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2878#true} {2878#true} #81#return; {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L272 TraceCheckUtils]: 17: Hoare triple {2878#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,048 INFO L290 TraceCheckUtils]: 18: Hoare triple {2878#true} ~cond := #in~cond; {2937#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:04:30,049 INFO L290 TraceCheckUtils]: 19: Hoare triple {2937#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2941#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:30,049 INFO L290 TraceCheckUtils]: 20: Hoare triple {2941#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2941#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:30,049 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2941#(not (= |assume_abort_if_not_#in~cond| 0))} {2878#true} #83#return; {2948#(<= 1 main_~x~0)} is VALID [2022-04-27 13:04:30,049 INFO L272 TraceCheckUtils]: 22: Hoare triple {2948#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,049 INFO L290 TraceCheckUtils]: 23: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,049 INFO L290 TraceCheckUtils]: 24: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,049 INFO L290 TraceCheckUtils]: 25: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,050 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2878#true} {2948#(<= 1 main_~x~0)} #85#return; {2948#(<= 1 main_~x~0)} is VALID [2022-04-27 13:04:30,050 INFO L290 TraceCheckUtils]: 27: Hoare triple {2948#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,050 INFO L272 TraceCheckUtils]: 28: Hoare triple {2967#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,050 INFO L290 TraceCheckUtils]: 29: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,050 INFO L290 TraceCheckUtils]: 30: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,050 INFO L290 TraceCheckUtils]: 31: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,051 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2878#true} {2967#(<= 1 main_~a~0)} #87#return; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,051 INFO L272 TraceCheckUtils]: 33: Hoare triple {2967#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,051 INFO L290 TraceCheckUtils]: 34: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,051 INFO L290 TraceCheckUtils]: 35: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,051 INFO L290 TraceCheckUtils]: 36: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,059 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2878#true} {2967#(<= 1 main_~a~0)} #89#return; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,060 INFO L290 TraceCheckUtils]: 38: Hoare triple {2967#(<= 1 main_~a~0)} assume !false; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,060 INFO L290 TraceCheckUtils]: 39: Hoare triple {2967#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 40: Hoare triple {3004#(<= 1 main_~c~0)} assume !false; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,061 INFO L272 TraceCheckUtils]: 41: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 42: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 43: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 44: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #91#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,061 INFO L272 TraceCheckUtils]: 46: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 47: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 48: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,061 INFO L290 TraceCheckUtils]: 49: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,062 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #93#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,062 INFO L272 TraceCheckUtils]: 51: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,062 INFO L290 TraceCheckUtils]: 52: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,062 INFO L290 TraceCheckUtils]: 53: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,062 INFO L290 TraceCheckUtils]: 54: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,063 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #95#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,063 INFO L272 TraceCheckUtils]: 56: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,063 INFO L290 TraceCheckUtils]: 57: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,063 INFO L290 TraceCheckUtils]: 58: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,063 INFO L290 TraceCheckUtils]: 59: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,064 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #97#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,064 INFO L290 TraceCheckUtils]: 61: Hoare triple {3004#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,064 INFO L290 TraceCheckUtils]: 62: Hoare triple {3004#(<= 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; {3074#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:30,065 INFO L290 TraceCheckUtils]: 63: Hoare triple {3074#(<= 1 main_~b~0)} assume !false; {3074#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:30,065 INFO L290 TraceCheckUtils]: 64: Hoare triple {3074#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2879#false} is VALID [2022-04-27 13:04:30,065 INFO L272 TraceCheckUtils]: 65: Hoare triple {2879#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {2879#false} is VALID [2022-04-27 13:04:30,065 INFO L290 TraceCheckUtils]: 66: Hoare triple {2879#false} ~cond := #in~cond; {2879#false} is VALID [2022-04-27 13:04:30,065 INFO L290 TraceCheckUtils]: 67: Hoare triple {2879#false} assume 0 == ~cond; {2879#false} is VALID [2022-04-27 13:04:30,065 INFO L290 TraceCheckUtils]: 68: Hoare triple {2879#false} assume !false; {2879#false} is VALID [2022-04-27 13:04:30,065 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-27 13:04:30,066 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:30,404 INFO L290 TraceCheckUtils]: 68: Hoare triple {2879#false} assume !false; {2879#false} is VALID [2022-04-27 13:04:30,404 INFO L290 TraceCheckUtils]: 67: Hoare triple {2879#false} assume 0 == ~cond; {2879#false} is VALID [2022-04-27 13:04:30,405 INFO L290 TraceCheckUtils]: 66: Hoare triple {2879#false} ~cond := #in~cond; {2879#false} is VALID [2022-04-27 13:04:30,405 INFO L272 TraceCheckUtils]: 65: Hoare triple {2879#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {2879#false} is VALID [2022-04-27 13:04:30,405 INFO L290 TraceCheckUtils]: 64: Hoare triple {3074#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2879#false} is VALID [2022-04-27 13:04:30,405 INFO L290 TraceCheckUtils]: 63: Hoare triple {3074#(<= 1 main_~b~0)} assume !false; {3074#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:30,406 INFO L290 TraceCheckUtils]: 62: Hoare triple {3004#(<= 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; {3074#(<= 1 main_~b~0)} is VALID [2022-04-27 13:04:30,406 INFO L290 TraceCheckUtils]: 61: Hoare triple {3004#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,407 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #97#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,407 INFO L290 TraceCheckUtils]: 59: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,407 INFO L290 TraceCheckUtils]: 58: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,407 INFO L290 TraceCheckUtils]: 57: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,407 INFO L272 TraceCheckUtils]: 56: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,408 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #95#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,408 INFO L290 TraceCheckUtils]: 54: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,408 INFO L290 TraceCheckUtils]: 53: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,408 INFO L290 TraceCheckUtils]: 52: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,408 INFO L272 TraceCheckUtils]: 51: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,409 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #93#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,409 INFO L290 TraceCheckUtils]: 49: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,409 INFO L290 TraceCheckUtils]: 48: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,409 INFO L290 TraceCheckUtils]: 47: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,409 INFO L272 TraceCheckUtils]: 46: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,410 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2878#true} {3004#(<= 1 main_~c~0)} #91#return; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,410 INFO L290 TraceCheckUtils]: 44: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,410 INFO L290 TraceCheckUtils]: 43: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,410 INFO L290 TraceCheckUtils]: 42: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,410 INFO L272 TraceCheckUtils]: 41: Hoare triple {3004#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,411 INFO L290 TraceCheckUtils]: 40: Hoare triple {3004#(<= 1 main_~c~0)} assume !false; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,411 INFO L290 TraceCheckUtils]: 39: Hoare triple {2967#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:04:30,412 INFO L290 TraceCheckUtils]: 38: Hoare triple {2967#(<= 1 main_~a~0)} assume !false; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,412 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2878#true} {2967#(<= 1 main_~a~0)} #89#return; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,412 INFO L290 TraceCheckUtils]: 36: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,412 INFO L290 TraceCheckUtils]: 35: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,412 INFO L290 TraceCheckUtils]: 34: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,412 INFO L272 TraceCheckUtils]: 33: Hoare triple {2967#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,413 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {2878#true} {2967#(<= 1 main_~a~0)} #87#return; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,413 INFO L290 TraceCheckUtils]: 31: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,413 INFO L290 TraceCheckUtils]: 30: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,413 INFO L290 TraceCheckUtils]: 29: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,413 INFO L272 TraceCheckUtils]: 28: Hoare triple {2967#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,414 INFO L290 TraceCheckUtils]: 27: Hoare triple {2948#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:04:30,414 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2878#true} {2948#(<= 1 main_~x~0)} #85#return; {2948#(<= 1 main_~x~0)} is VALID [2022-04-27 13:04:30,414 INFO L290 TraceCheckUtils]: 25: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,414 INFO L290 TraceCheckUtils]: 24: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,414 INFO L290 TraceCheckUtils]: 23: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,414 INFO L272 TraceCheckUtils]: 22: Hoare triple {2948#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,415 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2941#(not (= |assume_abort_if_not_#in~cond| 0))} {2878#true} #83#return; {2948#(<= 1 main_~x~0)} is VALID [2022-04-27 13:04:30,415 INFO L290 TraceCheckUtils]: 20: Hoare triple {2941#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2941#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:30,416 INFO L290 TraceCheckUtils]: 19: Hoare triple {3243#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2941#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:30,416 INFO L290 TraceCheckUtils]: 18: Hoare triple {2878#true} ~cond := #in~cond; {3243#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 13:04:30,416 INFO L272 TraceCheckUtils]: 17: Hoare triple {2878#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,416 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2878#true} {2878#true} #81#return; {2878#true} is VALID [2022-04-27 13:04:30,416 INFO L290 TraceCheckUtils]: 15: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,416 INFO L290 TraceCheckUtils]: 14: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L290 TraceCheckUtils]: 13: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L272 TraceCheckUtils]: 12: Hoare triple {2878#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L290 TraceCheckUtils]: 11: Hoare triple {2878#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2878#true} {2878#true} #79#return; {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L290 TraceCheckUtils]: 9: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L290 TraceCheckUtils]: 7: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L272 TraceCheckUtils]: 6: Hoare triple {2878#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {2878#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {2878#true} is VALID [2022-04-27 13:04:30,417 INFO L272 TraceCheckUtils]: 4: Hoare triple {2878#true} call #t~ret6 := main(); {2878#true} is VALID [2022-04-27 13:04:30,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2878#true} {2878#true} #103#return; {2878#true} is VALID [2022-04-27 13:04:30,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:04:30,418 INFO L290 TraceCheckUtils]: 1: Hoare triple {2878#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); {2878#true} is VALID [2022-04-27 13:04:30,418 INFO L272 TraceCheckUtils]: 0: Hoare triple {2878#true} call ULTIMATE.init(); {2878#true} is VALID [2022-04-27 13:04:30,418 INFO L134 CoverageAnalysis]: Checked inductivity of 94 backedges. 14 proven. 11 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-27 13:04:30,418 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:30,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1861999613] [2022-04-27 13:04:30,418 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:30,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [54305645] [2022-04-27 13:04:30,418 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [54305645] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:30,418 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:30,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 13:04:30,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2117537708] [2022-04-27 13:04:30,419 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:30,420 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 69 [2022-04-27 13:04:30,421 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:30,421 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-27 13:04:30,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:30,462 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:04:30,462 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:30,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:04:30,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:04:30,463 INFO L87 Difference]: Start difference. First operand 59 states and 71 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-27 13:04:31,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:31,201 INFO L93 Difference]: Finished difference Result 106 states and 146 transitions. [2022-04-27 13:04:31,201 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:04:31,201 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) Word has length 69 [2022-04-27 13:04:31,201 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:31,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-27 13:04:31,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-27 13:04:31,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-27 13:04:31,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-27 13:04:31,207 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 110 transitions. [2022-04-27 13:04:31,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:31,304 INFO L225 Difference]: With dead ends: 106 [2022-04-27 13:04:31,304 INFO L226 Difference]: Without dead ends: 98 [2022-04-27 13:04:31,305 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 142 GetRequests, 129 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-27 13:04:31,305 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 30 mSDsluCounter, 199 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 227 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:31,306 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 259 Invalid, 227 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:04:31,306 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-27 13:04:31,390 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 89. [2022-04-27 13:04:31,390 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:31,390 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-27 13:04:31,391 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-27 13:04:31,391 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-27 13:04:31,396 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:31,396 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-27 13:04:31,396 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-27 13:04:31,397 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:31,397 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:31,398 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-27 13:04:31,399 INFO L87 Difference]: Start difference. First operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) Second operand 98 states. [2022-04-27 13:04:31,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:31,402 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-27 13:04:31,403 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-27 13:04:31,408 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:31,409 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:31,409 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:31,409 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:31,409 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 47 states have (on average 1.1914893617021276) internal successors, (56), 48 states have internal predecessors, (56), 34 states have call successors, (34), 8 states have call predecessors, (34), 7 states have return successors, (32), 32 states have call predecessors, (32), 32 states have call successors, (32) [2022-04-27 13:04:31,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 122 transitions. [2022-04-27 13:04:31,414 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 122 transitions. Word has length 69 [2022-04-27 13:04:31,417 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:31,417 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 122 transitions. [2022-04-27 13:04:31,417 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 4 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-27 13:04:31,417 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 122 transitions. [2022-04-27 13:04:31,418 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-27 13:04:31,418 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:31,418 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:04:31,447 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-27 13:04:31,631 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-27 13:04:31,631 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:31,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:31,632 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 1 times [2022-04-27 13:04:31,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:31,632 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1195988049] [2022-04-27 13:04:31,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:31,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:31,655 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:31,655 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [367457293] [2022-04-27 13:04:31,655 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:31,655 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:31,656 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:31,667 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-27 13:04:31,679 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-27 13:04:31,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:31,728 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:04:31,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:31,743 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:31,990 INFO L272 TraceCheckUtils]: 0: Hoare triple {3815#true} call ULTIMATE.init(); {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 1: Hoare triple {3815#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); {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 2: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3815#true} {3815#true} #103#return; {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L272 TraceCheckUtils]: 4: Hoare triple {3815#true} call #t~ret6 := main(); {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 5: Hoare triple {3815#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L272 TraceCheckUtils]: 6: Hoare triple {3815#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 7: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 8: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 9: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3815#true} {3815#true} #79#return; {3815#true} is VALID [2022-04-27 13:04:31,991 INFO L290 TraceCheckUtils]: 11: Hoare triple {3815#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L272 TraceCheckUtils]: 12: Hoare triple {3815#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 13: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 14: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 15: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3815#true} {3815#true} #81#return; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L272 TraceCheckUtils]: 17: Hoare triple {3815#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 18: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 19: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 20: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3815#true} {3815#true} #83#return; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L272 TraceCheckUtils]: 22: Hoare triple {3815#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 23: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,992 INFO L290 TraceCheckUtils]: 24: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,993 INFO L290 TraceCheckUtils]: 25: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,993 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3815#true} {3815#true} #85#return; {3815#true} is VALID [2022-04-27 13:04:31,993 INFO L290 TraceCheckUtils]: 27: Hoare triple {3815#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,993 INFO L272 TraceCheckUtils]: 28: Hoare triple {3901#(= main_~q~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,993 INFO L290 TraceCheckUtils]: 29: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,993 INFO L290 TraceCheckUtils]: 30: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,993 INFO L290 TraceCheckUtils]: 31: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,994 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3815#true} {3901#(= main_~q~0 0)} #87#return; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,994 INFO L272 TraceCheckUtils]: 33: Hoare triple {3901#(= main_~q~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,994 INFO L290 TraceCheckUtils]: 34: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,994 INFO L290 TraceCheckUtils]: 35: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,994 INFO L290 TraceCheckUtils]: 36: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,995 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3815#true} {3901#(= main_~q~0 0)} #89#return; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,995 INFO L290 TraceCheckUtils]: 38: Hoare triple {3901#(= main_~q~0 0)} assume !false; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,995 INFO L290 TraceCheckUtils]: 39: Hoare triple {3901#(= main_~q~0 0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,996 INFO L290 TraceCheckUtils]: 40: Hoare triple {3901#(= main_~q~0 0)} assume !false; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,996 INFO L272 TraceCheckUtils]: 41: Hoare triple {3901#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,996 INFO L290 TraceCheckUtils]: 42: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,996 INFO L290 TraceCheckUtils]: 43: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,996 INFO L290 TraceCheckUtils]: 44: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,996 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3815#true} {3901#(= main_~q~0 0)} #91#return; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,997 INFO L272 TraceCheckUtils]: 46: Hoare triple {3901#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,997 INFO L290 TraceCheckUtils]: 47: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,997 INFO L290 TraceCheckUtils]: 48: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,997 INFO L290 TraceCheckUtils]: 49: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:31,997 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3815#true} {3901#(= main_~q~0 0)} #93#return; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:04:31,997 INFO L272 TraceCheckUtils]: 51: Hoare triple {3901#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,998 INFO L290 TraceCheckUtils]: 52: Hoare triple {3815#true} ~cond := #in~cond; {3977#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:31,998 INFO L290 TraceCheckUtils]: 53: Hoare triple {3977#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:31,998 INFO L290 TraceCheckUtils]: 54: Hoare triple {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:31,999 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} {3901#(= main_~q~0 0)} #95#return; {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-27 13:04:31,999 INFO L272 TraceCheckUtils]: 56: Hoare triple {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:31,999 INFO L290 TraceCheckUtils]: 57: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:31,999 INFO L290 TraceCheckUtils]: 58: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:31,999 INFO L290 TraceCheckUtils]: 59: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:32,002 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3815#true} {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} #97#return; {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-27 13:04:32,002 INFO L290 TraceCheckUtils]: 61: Hoare triple {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-27 13:04:32,003 INFO L290 TraceCheckUtils]: 62: Hoare triple {3988#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:32,003 INFO L290 TraceCheckUtils]: 63: Hoare triple {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:32,003 INFO L290 TraceCheckUtils]: 64: Hoare triple {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:32,004 INFO L290 TraceCheckUtils]: 65: Hoare triple {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:32,004 INFO L272 TraceCheckUtils]: 66: Hoare triple {4010#(and (= main_~p~0 0) (= main_~a~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)); {3815#true} is VALID [2022-04-27 13:04:32,004 INFO L290 TraceCheckUtils]: 67: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:32,004 INFO L290 TraceCheckUtils]: 68: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:32,004 INFO L290 TraceCheckUtils]: 69: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:32,005 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {3815#true} {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {4010#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:32,005 INFO L272 TraceCheckUtils]: 71: Hoare triple {4010#(and (= main_~p~0 0) (= 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)); {4038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:32,006 INFO L290 TraceCheckUtils]: 72: Hoare triple {4038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:32,006 INFO L290 TraceCheckUtils]: 73: Hoare triple {4042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3816#false} is VALID [2022-04-27 13:04:32,006 INFO L290 TraceCheckUtils]: 74: Hoare triple {3816#false} assume !false; {3816#false} is VALID [2022-04-27 13:04:32,006 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 15 proven. 12 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-27 13:04:32,007 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:42,605 INFO L290 TraceCheckUtils]: 74: Hoare triple {3816#false} assume !false; {3816#false} is VALID [2022-04-27 13:04:42,606 INFO L290 TraceCheckUtils]: 73: Hoare triple {4042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3816#false} is VALID [2022-04-27 13:04:42,606 INFO L290 TraceCheckUtils]: 72: Hoare triple {4038#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4042#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:42,607 INFO L272 TraceCheckUtils]: 71: Hoare triple {4058#(= 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)); {4038#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:42,607 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {3815#true} {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #91#return; {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:04:42,608 INFO L290 TraceCheckUtils]: 69: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,608 INFO L290 TraceCheckUtils]: 68: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,608 INFO L290 TraceCheckUtils]: 67: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,608 INFO L272 TraceCheckUtils]: 66: Hoare triple {4058#(= main_~a~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)); {3815#true} is VALID [2022-04-27 13:04:42,609 INFO L290 TraceCheckUtils]: 65: Hoare triple {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:04:42,609 INFO L290 TraceCheckUtils]: 64: Hoare triple {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:04:42,609 INFO L290 TraceCheckUtils]: 63: Hoare triple {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !false; {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:04:42,610 INFO L290 TraceCheckUtils]: 62: Hoare triple {4086#(= 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; {4058#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:04:42,610 INFO L290 TraceCheckUtils]: 61: Hoare triple {4086#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4086#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:42,611 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3815#true} {4086#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #97#return; {4086#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:42,611 INFO L290 TraceCheckUtils]: 59: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,611 INFO L290 TraceCheckUtils]: 58: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,611 INFO L290 TraceCheckUtils]: 57: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,611 INFO L272 TraceCheckUtils]: 56: Hoare triple {4086#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,612 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} {3815#true} #95#return; {4086#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:42,612 INFO L290 TraceCheckUtils]: 54: Hoare triple {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:42,612 INFO L290 TraceCheckUtils]: 53: Hoare triple {4117#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {3981#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:42,612 INFO L290 TraceCheckUtils]: 52: Hoare triple {3815#true} ~cond := #in~cond; {4117#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:04:42,613 INFO L272 TraceCheckUtils]: 51: Hoare triple {3815#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3815#true} {3815#true} #93#return; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 49: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 48: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 47: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L272 TraceCheckUtils]: 46: Hoare triple {3815#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3815#true} {3815#true} #91#return; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 44: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 43: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 42: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L272 TraceCheckUtils]: 41: Hoare triple {3815#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 40: Hoare triple {3815#true} assume !false; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 39: Hoare triple {3815#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 38: Hoare triple {3815#true} assume !false; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3815#true} {3815#true} #89#return; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 36: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 35: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,613 INFO L290 TraceCheckUtils]: 34: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L272 TraceCheckUtils]: 33: Hoare triple {3815#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3815#true} {3815#true} #87#return; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 31: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 30: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 29: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L272 TraceCheckUtils]: 28: Hoare triple {3815#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 27: Hoare triple {3815#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3815#true} {3815#true} #85#return; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 25: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 24: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 23: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L272 TraceCheckUtils]: 22: Hoare triple {3815#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3815#true} {3815#true} #83#return; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 20: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 19: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 18: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L272 TraceCheckUtils]: 17: Hoare triple {3815#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3815#true} {3815#true} #81#return; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 15: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,614 INFO L290 TraceCheckUtils]: 14: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 13: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L272 TraceCheckUtils]: 12: Hoare triple {3815#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 11: Hoare triple {3815#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3815#true} {3815#true} #79#return; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 9: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 8: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 7: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L272 TraceCheckUtils]: 6: Hoare triple {3815#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {3815#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L272 TraceCheckUtils]: 4: Hoare triple {3815#true} call #t~ret6 := main(); {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3815#true} {3815#true} #103#return; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:04:42,615 INFO L290 TraceCheckUtils]: 1: Hoare triple {3815#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); {3815#true} is VALID [2022-04-27 13:04:42,616 INFO L272 TraceCheckUtils]: 0: Hoare triple {3815#true} call ULTIMATE.init(); {3815#true} is VALID [2022-04-27 13:04:42,616 INFO L134 CoverageAnalysis]: Checked inductivity of 115 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-27 13:04:42,616 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:42,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1195988049] [2022-04-27 13:04:42,616 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:42,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [367457293] [2022-04-27 13:04:42,616 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [367457293] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:42,616 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:42,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-27 13:04:42,617 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1184126886] [2022-04-27 13:04:42,617 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:42,617 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 75 [2022-04-27 13:04:42,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:42,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-27 13:04:42,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:42,679 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:04:42,679 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:42,680 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:04:42,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:04:42,680 INFO L87 Difference]: Start difference. First operand 89 states and 122 transitions. Second operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-27 13:04:44,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:44,159 INFO L93 Difference]: Finished difference Result 132 states and 187 transitions. [2022-04-27 13:04:44,159 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:04:44,160 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) Word has length 75 [2022-04-27 13:04:44,160 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:44,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-27 13:04:44,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-27 13:04:44,162 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-27 13:04:44,164 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-27 13:04:44,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-27 13:04:44,268 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-27 13:04:44,271 INFO L225 Difference]: With dead ends: 132 [2022-04-27 13:04:44,271 INFO L226 Difference]: Without dead ends: 128 [2022-04-27 13:04:44,271 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 141 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=214, Unknown=0, NotChecked=0, Total=272 [2022-04-27 13:04:44,272 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 30 mSDsluCounter, 209 mSDsCounter, 0 mSdLazyCounter, 349 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 255 SdHoareTripleChecker+Invalid, 391 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 349 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:44,272 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [36 Valid, 255 Invalid, 391 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 349 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-27 13:04:44,273 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-27 13:04:44,371 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 96. [2022-04-27 13:04:44,371 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:44,372 INFO L82 GeneralOperation]: Start isEquivalent. First operand 128 states. Second operand has 96 states, 51 states have (on average 1.1764705882352942) internal successors, (60), 53 states have internal predecessors, (60), 36 states have call successors, (36), 9 states have call predecessors, (36), 8 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:44,372 INFO L74 IsIncluded]: Start isIncluded. First operand 128 states. Second operand has 96 states, 51 states have (on average 1.1764705882352942) internal successors, (60), 53 states have internal predecessors, (60), 36 states have call successors, (36), 9 states have call predecessors, (36), 8 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:44,372 INFO L87 Difference]: Start difference. First operand 128 states. Second operand has 96 states, 51 states have (on average 1.1764705882352942) internal successors, (60), 53 states have internal predecessors, (60), 36 states have call successors, (36), 9 states have call predecessors, (36), 8 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:44,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:44,377 INFO L93 Difference]: Finished difference Result 128 states and 181 transitions. [2022-04-27 13:04:44,377 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 181 transitions. [2022-04-27 13:04:44,378 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:44,378 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:44,378 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 51 states have (on average 1.1764705882352942) internal successors, (60), 53 states have internal predecessors, (60), 36 states have call successors, (36), 9 states have call predecessors, (36), 8 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) Second operand 128 states. [2022-04-27 13:04:44,379 INFO L87 Difference]: Start difference. First operand has 96 states, 51 states have (on average 1.1764705882352942) internal successors, (60), 53 states have internal predecessors, (60), 36 states have call successors, (36), 9 states have call predecessors, (36), 8 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) Second operand 128 states. [2022-04-27 13:04:44,384 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:44,384 INFO L93 Difference]: Finished difference Result 128 states and 181 transitions. [2022-04-27 13:04:44,384 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 181 transitions. [2022-04-27 13:04:44,385 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:44,385 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:44,385 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:44,385 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:44,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 51 states have (on average 1.1764705882352942) internal successors, (60), 53 states have internal predecessors, (60), 36 states have call successors, (36), 9 states have call predecessors, (36), 8 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:44,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 130 transitions. [2022-04-27 13:04:44,389 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 130 transitions. Word has length 75 [2022-04-27 13:04:44,389 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:44,389 INFO L495 AbstractCegarLoop]: Abstraction has 96 states and 130 transitions. [2022-04-27 13:04:44,389 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.0) internal successors, (36), 11 states have internal predecessors, (36), 6 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 6 states have call predecessors, (19), 6 states have call successors, (19) [2022-04-27 13:04:44,389 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 130 transitions. [2022-04-27 13:04:44,390 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-27 13:04:44,390 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:44,390 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:04:44,411 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-27 13:04:44,607 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-27 13:04:44,607 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:44,608 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:44,608 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 2 times [2022-04-27 13:04:44,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:44,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [416973873] [2022-04-27 13:04:44,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:44,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:44,621 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:44,621 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1825174829] [2022-04-27 13:04:44,621 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:04:44,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:44,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:44,622 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-27 13:04:44,623 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-27 13:04:44,692 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:04:44,692 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:04:44,693 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-27 13:04:44,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:44,709 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:45,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {4909#true} call ULTIMATE.init(); {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {4909#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); {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4909#true} {4909#true} #103#return; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L272 TraceCheckUtils]: 4: Hoare triple {4909#true} call #t~ret6 := main(); {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {4909#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L272 TraceCheckUtils]: 6: Hoare triple {4909#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 7: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 8: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 9: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4909#true} {4909#true} #79#return; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L290 TraceCheckUtils]: 11: Hoare triple {4909#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4909#true} is VALID [2022-04-27 13:04:45,789 INFO L272 TraceCheckUtils]: 12: Hoare triple {4909#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {4909#true} ~cond := #in~cond; {4953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:04:45,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {4953#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:45,790 INFO L290 TraceCheckUtils]: 15: Hoare triple {4957#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4957#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:04:45,791 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4957#(not (= |assume_abort_if_not_#in~cond| 0))} {4909#true} #81#return; {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,791 INFO L272 TraceCheckUtils]: 17: Hoare triple {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L290 TraceCheckUtils]: 18: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L290 TraceCheckUtils]: 19: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L290 TraceCheckUtils]: 20: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4909#true} {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #83#return; {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,791 INFO L272 TraceCheckUtils]: 22: Hoare triple {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L290 TraceCheckUtils]: 23: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L290 TraceCheckUtils]: 24: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,792 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4909#true} {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} #85#return; {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,792 INFO L290 TraceCheckUtils]: 27: Hoare triple {4964#(and (<= 0 main_~y~0) (<= main_~y~0 50))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,792 INFO L272 TraceCheckUtils]: 28: Hoare triple {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,792 INFO L290 TraceCheckUtils]: 29: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,792 INFO L290 TraceCheckUtils]: 30: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,792 INFO L290 TraceCheckUtils]: 31: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,793 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4909#true} {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} #87#return; {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,793 INFO L272 TraceCheckUtils]: 33: Hoare triple {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,793 INFO L290 TraceCheckUtils]: 34: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,793 INFO L290 TraceCheckUtils]: 35: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,793 INFO L290 TraceCheckUtils]: 36: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,795 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4909#true} {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} #89#return; {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,795 INFO L290 TraceCheckUtils]: 38: Hoare triple {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} assume !false; {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,796 INFO L290 TraceCheckUtils]: 39: Hoare triple {4998#(and (<= 0 main_~y~0) (= 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_~y~0 50) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,796 INFO L290 TraceCheckUtils]: 40: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !false; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,796 INFO L272 TraceCheckUtils]: 41: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,796 INFO L290 TraceCheckUtils]: 42: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,796 INFO L290 TraceCheckUtils]: 43: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,796 INFO L290 TraceCheckUtils]: 44: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,797 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} #91#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,797 INFO L272 TraceCheckUtils]: 46: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,797 INFO L290 TraceCheckUtils]: 47: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,797 INFO L290 TraceCheckUtils]: 48: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,797 INFO L290 TraceCheckUtils]: 49: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,798 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} #93#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,798 INFO L272 TraceCheckUtils]: 51: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,798 INFO L290 TraceCheckUtils]: 52: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,798 INFO L290 TraceCheckUtils]: 53: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,798 INFO L290 TraceCheckUtils]: 54: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,799 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} #95#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,799 INFO L272 TraceCheckUtils]: 56: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,799 INFO L290 TraceCheckUtils]: 57: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,799 INFO L290 TraceCheckUtils]: 58: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,799 INFO L290 TraceCheckUtils]: 59: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,799 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} #97#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,800 INFO L290 TraceCheckUtils]: 61: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= main_~p~0 1))} is VALID [2022-04-27 13:04:45,800 INFO L290 TraceCheckUtils]: 62: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (<= main_~y~0 50) (= 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; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,802 INFO L290 TraceCheckUtils]: 63: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} assume !false; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,802 INFO L290 TraceCheckUtils]: 64: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,802 INFO L290 TraceCheckUtils]: 65: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} assume !false; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,802 INFO L272 TraceCheckUtils]: 66: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,802 INFO L290 TraceCheckUtils]: 67: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,802 INFO L290 TraceCheckUtils]: 68: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,803 INFO L290 TraceCheckUtils]: 69: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,803 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4909#true} {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} #91#return; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,803 INFO L272 TraceCheckUtils]: 71: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:45,803 INFO L290 TraceCheckUtils]: 72: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:45,803 INFO L290 TraceCheckUtils]: 73: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:45,803 INFO L290 TraceCheckUtils]: 74: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:45,804 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {4909#true} {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} #93#return; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} is VALID [2022-04-27 13:04:45,805 INFO L272 TraceCheckUtils]: 76: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= main_~y~0 50))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5148#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:45,805 INFO L290 TraceCheckUtils]: 77: Hoare triple {5148#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5152#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:45,805 INFO L290 TraceCheckUtils]: 78: Hoare triple {5152#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4910#false} is VALID [2022-04-27 13:04:45,805 INFO L290 TraceCheckUtils]: 79: Hoare triple {4910#false} assume !false; {4910#false} is VALID [2022-04-27 13:04:45,806 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 15 proven. 18 refuted. 0 times theorem prover too weak. 105 trivial. 0 not checked. [2022-04-27 13:04:45,806 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:46,233 INFO L290 TraceCheckUtils]: 79: Hoare triple {4910#false} assume !false; {4910#false} is VALID [2022-04-27 13:04:46,233 INFO L290 TraceCheckUtils]: 78: Hoare triple {5152#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4910#false} is VALID [2022-04-27 13:04:46,233 INFO L290 TraceCheckUtils]: 77: Hoare triple {5148#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {5152#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:46,234 INFO L272 TraceCheckUtils]: 76: Hoare triple {5168#(= 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)); {5148#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:46,235 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {4909#true} {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #93#return; {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:46,235 INFO L290 TraceCheckUtils]: 74: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:46,235 INFO L290 TraceCheckUtils]: 73: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:46,235 INFO L290 TraceCheckUtils]: 72: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:46,235 INFO L272 TraceCheckUtils]: 71: Hoare triple {5168#(= 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)); {4909#true} is VALID [2022-04-27 13:04:46,236 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4909#true} {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #91#return; {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:46,236 INFO L290 TraceCheckUtils]: 69: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:46,236 INFO L290 TraceCheckUtils]: 68: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:46,236 INFO L290 TraceCheckUtils]: 67: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:46,236 INFO L272 TraceCheckUtils]: 66: Hoare triple {5168#(= 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)); {4909#true} is VALID [2022-04-27 13:04:46,236 INFO L290 TraceCheckUtils]: 65: Hoare triple {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:46,236 INFO L290 TraceCheckUtils]: 64: Hoare triple {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:46,237 INFO L290 TraceCheckUtils]: 63: Hoare triple {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !false; {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:04:48,238 WARN L290 TraceCheckUtils]: 62: Hoare triple {5211#(= (+ (* (+ (* (* 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; {5168#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-27 13:04:48,239 INFO L290 TraceCheckUtils]: 61: Hoare triple {5211#(= (+ (* (+ (* (* 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); {5211#(= (+ (* (+ (* (* 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-27 13:04:48,240 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4909#true} {5211#(= (+ (* (+ (* (* 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)} #97#return; {5211#(= (+ (* (+ (* (* 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-27 13:04:48,240 INFO L290 TraceCheckUtils]: 59: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,240 INFO L290 TraceCheckUtils]: 58: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,240 INFO L290 TraceCheckUtils]: 57: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,240 INFO L272 TraceCheckUtils]: 56: Hoare triple {5211#(= (+ (* (+ (* (* 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)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,241 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4909#true} {5211#(= (+ (* (+ (* (* 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)} #95#return; {5211#(= (+ (* (+ (* (* 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-27 13:04:48,241 INFO L290 TraceCheckUtils]: 54: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,241 INFO L290 TraceCheckUtils]: 53: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,241 INFO L290 TraceCheckUtils]: 52: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,241 INFO L272 TraceCheckUtils]: 51: Hoare triple {5211#(= (+ (* (+ (* (* 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)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,242 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4909#true} {5211#(= (+ (* (+ (* (* 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)} #93#return; {5211#(= (+ (* (+ (* (* 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-27 13:04:48,242 INFO L290 TraceCheckUtils]: 49: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,242 INFO L290 TraceCheckUtils]: 48: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,242 INFO L290 TraceCheckUtils]: 47: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,242 INFO L272 TraceCheckUtils]: 46: Hoare triple {5211#(= (+ (* (+ (* (* 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)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,242 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4909#true} {5211#(= (+ (* (+ (* (* 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)} #91#return; {5211#(= (+ (* (+ (* (* 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-27 13:04:48,242 INFO L290 TraceCheckUtils]: 44: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,243 INFO L290 TraceCheckUtils]: 43: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,243 INFO L290 TraceCheckUtils]: 42: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,243 INFO L272 TraceCheckUtils]: 41: Hoare triple {5211#(= (+ (* (+ (* (* 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)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,243 INFO L290 TraceCheckUtils]: 40: Hoare triple {5211#(= (+ (* (+ (* (* 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; {5211#(= (+ (* (+ (* (* 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-27 13:04:48,243 INFO L290 TraceCheckUtils]: 39: Hoare triple {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5211#(= (+ (* (+ (* (* 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-27 13:04:48,247 INFO L290 TraceCheckUtils]: 38: Hoare triple {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:48,248 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4909#true} {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #89#return; {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:48,248 INFO L290 TraceCheckUtils]: 36: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,248 INFO L290 TraceCheckUtils]: 35: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,248 INFO L290 TraceCheckUtils]: 34: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,248 INFO L272 TraceCheckUtils]: 33: Hoare triple {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,249 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4909#true} {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #87#return; {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:48,249 INFO L290 TraceCheckUtils]: 31: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,249 INFO L290 TraceCheckUtils]: 30: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,249 INFO L290 TraceCheckUtils]: 29: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,249 INFO L272 TraceCheckUtils]: 28: Hoare triple {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,250 INFO L290 TraceCheckUtils]: 27: Hoare triple {4909#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5281#(or (= main_~b~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:04:48,250 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4909#true} {4909#true} #85#return; {4909#true} is VALID [2022-04-27 13:04:48,250 INFO L290 TraceCheckUtils]: 25: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,250 INFO L290 TraceCheckUtils]: 24: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,250 INFO L290 TraceCheckUtils]: 23: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,250 INFO L272 TraceCheckUtils]: 22: Hoare triple {4909#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4909#true} {4909#true} #83#return; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 20: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 19: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 18: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L272 TraceCheckUtils]: 17: Hoare triple {4909#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4909#true} {4909#true} #81#return; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 15: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 14: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 13: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L272 TraceCheckUtils]: 12: Hoare triple {4909#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 11: Hoare triple {4909#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4909#true} {4909#true} #79#return; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 9: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,251 INFO L290 TraceCheckUtils]: 8: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L290 TraceCheckUtils]: 7: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L272 TraceCheckUtils]: 6: Hoare triple {4909#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L290 TraceCheckUtils]: 5: Hoare triple {4909#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L272 TraceCheckUtils]: 4: Hoare triple {4909#true} call #t~ret6 := main(); {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4909#true} {4909#true} #103#return; {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L290 TraceCheckUtils]: 2: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L290 TraceCheckUtils]: 1: Hoare triple {4909#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); {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L272 TraceCheckUtils]: 0: Hoare triple {4909#true} call ULTIMATE.init(); {4909#true} is VALID [2022-04-27 13:04:48,252 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 12 proven. 6 refuted. 0 times theorem prover too weak. 120 trivial. 0 not checked. [2022-04-27 13:04:48,253 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:48,253 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [416973873] [2022-04-27 13:04:48,253 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:48,253 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1825174829] [2022-04-27 13:04:48,253 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1825174829] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:48,253 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:48,253 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-27 13:04:48,253 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119210549] [2022-04-27 13:04:48,253 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:48,255 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) Word has length 80 [2022-04-27 13:04:48,255 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:48,255 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) [2022-04-27 13:04:48,513 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:48,513 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 13:04:48,513 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:48,514 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 13:04:48,514 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-04-27 13:04:48,514 INFO L87 Difference]: Start difference. First operand 96 states and 130 transitions. Second operand has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) [2022-04-27 13:04:52,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:52,916 INFO L93 Difference]: Finished difference Result 128 states and 169 transitions. [2022-04-27 13:04:52,916 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 13:04:52,916 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) Word has length 80 [2022-04-27 13:04:52,916 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:52,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) [2022-04-27 13:04:52,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 89 transitions. [2022-04-27 13:04:52,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) [2022-04-27 13:04:52,929 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 89 transitions. [2022-04-27 13:04:52,929 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 89 transitions. [2022-04-27 13:04:53,230 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:53,233 INFO L225 Difference]: With dead ends: 128 [2022-04-27 13:04:53,233 INFO L226 Difference]: Without dead ends: 126 [2022-04-27 13:04:53,233 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 147 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=88, Invalid=332, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:04:53,234 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 46 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 321 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 199 SdHoareTripleChecker+Invalid, 407 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 86 IncrementalHoareTripleChecker+Valid, 321 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.4s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:53,234 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 199 Invalid, 407 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 321 Invalid, 0 Unknown, 0 Unchecked, 2.4s Time] [2022-04-27 13:04:53,235 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2022-04-27 13:04:53,369 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 108. [2022-04-27 13:04:53,369 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:53,370 INFO L82 GeneralOperation]: Start isEquivalent. First operand 126 states. Second operand has 108 states, 60 states have (on average 1.15) internal successors, (69), 62 states have internal predecessors, (69), 36 states have call successors, (36), 12 states have call predecessors, (36), 11 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:53,370 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand has 108 states, 60 states have (on average 1.15) internal successors, (69), 62 states have internal predecessors, (69), 36 states have call successors, (36), 12 states have call predecessors, (36), 11 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:53,370 INFO L87 Difference]: Start difference. First operand 126 states. Second operand has 108 states, 60 states have (on average 1.15) internal successors, (69), 62 states have internal predecessors, (69), 36 states have call successors, (36), 12 states have call predecessors, (36), 11 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:53,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:53,374 INFO L93 Difference]: Finished difference Result 126 states and 167 transitions. [2022-04-27 13:04:53,374 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 167 transitions. [2022-04-27 13:04:53,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:53,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:53,375 INFO L74 IsIncluded]: Start isIncluded. First operand has 108 states, 60 states have (on average 1.15) internal successors, (69), 62 states have internal predecessors, (69), 36 states have call successors, (36), 12 states have call predecessors, (36), 11 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) Second operand 126 states. [2022-04-27 13:04:53,375 INFO L87 Difference]: Start difference. First operand has 108 states, 60 states have (on average 1.15) internal successors, (69), 62 states have internal predecessors, (69), 36 states have call successors, (36), 12 states have call predecessors, (36), 11 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) Second operand 126 states. [2022-04-27 13:04:53,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:53,379 INFO L93 Difference]: Finished difference Result 126 states and 167 transitions. [2022-04-27 13:04:53,379 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 167 transitions. [2022-04-27 13:04:53,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:53,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:53,380 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:53,380 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:53,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 108 states, 60 states have (on average 1.15) internal successors, (69), 62 states have internal predecessors, (69), 36 states have call successors, (36), 12 states have call predecessors, (36), 11 states have return successors, (34), 33 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-27 13:04:53,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 139 transitions. [2022-04-27 13:04:53,383 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 139 transitions. Word has length 80 [2022-04-27 13:04:53,383 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:53,383 INFO L495 AbstractCegarLoop]: Abstraction has 108 states and 139 transitions. [2022-04-27 13:04:53,383 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.6153846153846154) internal successors, (34), 11 states have internal predecessors, (34), 8 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (24), 8 states have call predecessors, (24), 8 states have call successors, (24) [2022-04-27 13:04:53,383 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 139 transitions. [2022-04-27 13:04:53,384 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-27 13:04:53,384 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:53,384 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:04:53,413 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-27 13:04:53,607 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-27 13:04:53,607 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:53,608 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:53,608 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 3 times [2022-04-27 13:04:53,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:53,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1683657672] [2022-04-27 13:04:53,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:53,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:53,625 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:53,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1313026838] [2022-04-27 13:04:53,625 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:04:53,626 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:53,626 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:53,629 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-27 13:04:53,654 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-27 13:04:53,690 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 13:04:53,690 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:04:53,691 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-27 13:04:53,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:53,708 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:58,307 INFO L272 TraceCheckUtils]: 0: Hoare triple {6034#true} call ULTIMATE.init(); {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 1: Hoare triple {6034#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); {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 2: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6034#true} {6034#true} #103#return; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {6034#true} call #t~ret6 := main(); {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 5: Hoare triple {6034#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L272 TraceCheckUtils]: 6: Hoare triple {6034#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 8: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 9: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6034#true} {6034#true} #79#return; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L290 TraceCheckUtils]: 11: Hoare triple {6034#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6034#true} is VALID [2022-04-27 13:04:58,308 INFO L272 TraceCheckUtils]: 12: Hoare triple {6034#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 15: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6034#true} {6034#true} #81#return; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L272 TraceCheckUtils]: 17: Hoare triple {6034#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 20: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6034#true} {6034#true} #83#return; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L272 TraceCheckUtils]: 22: Hoare triple {6034#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,309 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6034#true} {6034#true} #85#return; {6034#true} is VALID [2022-04-27 13:04:58,310 INFO L290 TraceCheckUtils]: 27: Hoare triple {6034#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,310 INFO L272 TraceCheckUtils]: 28: Hoare triple {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,310 INFO L290 TraceCheckUtils]: 29: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,310 INFO L290 TraceCheckUtils]: 30: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,310 INFO L290 TraceCheckUtils]: 31: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,311 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {6034#true} {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,311 INFO L272 TraceCheckUtils]: 33: Hoare triple {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,311 INFO L290 TraceCheckUtils]: 34: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,311 INFO L290 TraceCheckUtils]: 35: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,311 INFO L290 TraceCheckUtils]: 36: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,313 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {6034#true} {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,313 INFO L290 TraceCheckUtils]: 38: Hoare triple {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,314 INFO L290 TraceCheckUtils]: 39: Hoare triple {6120#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,314 INFO L290 TraceCheckUtils]: 40: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,315 INFO L272 TraceCheckUtils]: 41: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {6034#true} is VALID [2022-04-27 13:04:58,315 INFO L290 TraceCheckUtils]: 42: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,315 INFO L290 TraceCheckUtils]: 43: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,316 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {6034#true} {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,316 INFO L272 TraceCheckUtils]: 46: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {6034#true} is VALID [2022-04-27 13:04:58,316 INFO L290 TraceCheckUtils]: 47: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,316 INFO L290 TraceCheckUtils]: 48: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,316 INFO L290 TraceCheckUtils]: 49: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,317 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {6034#true} {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,317 INFO L272 TraceCheckUtils]: 51: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {6034#true} is VALID [2022-04-27 13:04:58,317 INFO L290 TraceCheckUtils]: 52: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,317 INFO L290 TraceCheckUtils]: 53: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,317 INFO L290 TraceCheckUtils]: 54: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,317 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {6034#true} {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,318 INFO L272 TraceCheckUtils]: 56: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,318 INFO L290 TraceCheckUtils]: 57: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,318 INFO L290 TraceCheckUtils]: 58: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,318 INFO L290 TraceCheckUtils]: 59: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,318 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {6034#true} {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,319 INFO L290 TraceCheckUtils]: 61: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:04:58,319 INFO L290 TraceCheckUtils]: 62: Hoare triple {6157#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,320 INFO L290 TraceCheckUtils]: 63: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,320 INFO L290 TraceCheckUtils]: 64: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,320 INFO L290 TraceCheckUtils]: 65: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,320 INFO L272 TraceCheckUtils]: 66: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L290 TraceCheckUtils]: 67: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L290 TraceCheckUtils]: 68: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L290 TraceCheckUtils]: 69: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {6034#true} {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,321 INFO L272 TraceCheckUtils]: 71: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L290 TraceCheckUtils]: 72: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L290 TraceCheckUtils]: 73: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:58,321 INFO L290 TraceCheckUtils]: 74: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:58,322 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {6034#true} {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,322 INFO L272 TraceCheckUtils]: 76: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:58,322 INFO L290 TraceCheckUtils]: 77: Hoare triple {6034#true} ~cond := #in~cond; {6273#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:58,323 INFO L290 TraceCheckUtils]: 78: Hoare triple {6273#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {6277#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:58,323 INFO L290 TraceCheckUtils]: 79: Hoare triple {6277#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {6277#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:58,324 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {6277#(not (= |__VERIFIER_assert_#in~cond| 0))} {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:04:58,324 INFO L272 TraceCheckUtils]: 81: Hoare triple {6227#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {6287#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:58,325 INFO L290 TraceCheckUtils]: 82: Hoare triple {6287#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6291#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:58,325 INFO L290 TraceCheckUtils]: 83: Hoare triple {6291#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6035#false} is VALID [2022-04-27 13:04:58,325 INFO L290 TraceCheckUtils]: 84: Hoare triple {6035#false} assume !false; {6035#false} is VALID [2022-04-27 13:04:58,325 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 31 proven. 8 refuted. 0 times theorem prover too weak. 126 trivial. 0 not checked. [2022-04-27 13:04:58,325 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:05:44,459 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:05:44,459 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1683657672] [2022-04-27 13:05:44,459 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:05:44,459 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1313026838] [2022-04-27 13:05:44,459 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1313026838] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:05:44,459 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:05:44,459 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 13:05:44,459 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [407684011] [2022-04-27 13:05:44,460 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:05:44,460 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) Word has length 85 [2022-04-27 13:05:44,460 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:05:44,460 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) [2022-04-27 13:05:44,505 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:44,505 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:05:44,505 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:05:44,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:05:44,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:05:44,506 INFO L87 Difference]: Start difference. First operand 108 states and 139 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) [2022-04-27 13:05:45,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:45,426 INFO L93 Difference]: Finished difference Result 144 states and 181 transitions. [2022-04-27 13:05:45,426 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:05:45,426 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) Word has length 85 [2022-04-27 13:05:45,426 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:05:45,427 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) [2022-04-27 13:05:45,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 89 transitions. [2022-04-27 13:05:45,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) [2022-04-27 13:05:45,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 89 transitions. [2022-04-27 13:05:45,431 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 89 transitions. [2022-04-27 13:05:45,542 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:45,545 INFO L225 Difference]: With dead ends: 144 [2022-04-27 13:05:45,545 INFO L226 Difference]: Without dead ends: 142 [2022-04-27 13:05:45,546 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 79 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=38, Invalid=144, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:05:45,546 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 19 mSDsluCounter, 169 mSDsCounter, 0 mSdLazyCounter, 277 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 208 SdHoareTripleChecker+Invalid, 287 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 277 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 13:05:45,546 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [24 Valid, 208 Invalid, 287 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 277 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 13:05:45,547 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2022-04-27 13:05:45,776 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 139. [2022-04-27 13:05:45,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:05:45,777 INFO L82 GeneralOperation]: Start isEquivalent. First operand 142 states. Second operand has 139 states, 79 states have (on average 1.139240506329114) internal successors, (90), 81 states have internal predecessors, (90), 44 states have call successors, (44), 16 states have call predecessors, (44), 15 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 13:05:45,777 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand has 139 states, 79 states have (on average 1.139240506329114) internal successors, (90), 81 states have internal predecessors, (90), 44 states have call successors, (44), 16 states have call predecessors, (44), 15 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 13:05:45,778 INFO L87 Difference]: Start difference. First operand 142 states. Second operand has 139 states, 79 states have (on average 1.139240506329114) internal successors, (90), 81 states have internal predecessors, (90), 44 states have call successors, (44), 16 states have call predecessors, (44), 15 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 13:05:45,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:45,784 INFO L93 Difference]: Finished difference Result 142 states and 179 transitions. [2022-04-27 13:05:45,784 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 179 transitions. [2022-04-27 13:05:45,785 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:45,785 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:45,785 INFO L74 IsIncluded]: Start isIncluded. First operand has 139 states, 79 states have (on average 1.139240506329114) internal successors, (90), 81 states have internal predecessors, (90), 44 states have call successors, (44), 16 states have call predecessors, (44), 15 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) Second operand 142 states. [2022-04-27 13:05:45,786 INFO L87 Difference]: Start difference. First operand has 139 states, 79 states have (on average 1.139240506329114) internal successors, (90), 81 states have internal predecessors, (90), 44 states have call successors, (44), 16 states have call predecessors, (44), 15 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) Second operand 142 states. [2022-04-27 13:05:45,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:45,790 INFO L93 Difference]: Finished difference Result 142 states and 179 transitions. [2022-04-27 13:05:45,790 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 179 transitions. [2022-04-27 13:05:45,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:45,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:45,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:05:45,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:05:45,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 139 states, 79 states have (on average 1.139240506329114) internal successors, (90), 81 states have internal predecessors, (90), 44 states have call successors, (44), 16 states have call predecessors, (44), 15 states have return successors, (42), 41 states have call predecessors, (42), 42 states have call successors, (42) [2022-04-27 13:05:45,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 176 transitions. [2022-04-27 13:05:45,794 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 176 transitions. Word has length 85 [2022-04-27 13:05:45,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:05:45,795 INFO L495 AbstractCegarLoop]: Abstraction has 139 states and 176 transitions. [2022-04-27 13:05:45,795 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 4 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 4 states have call predecessors, (14), 4 states have call successors, (14) [2022-04-27 13:05:45,795 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 176 transitions. [2022-04-27 13:05:45,796 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-27 13:05:45,796 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:05:45,796 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:05:45,816 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-27 13:05:46,010 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-27 13:05:46,010 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:05:46,011 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:05:46,011 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 1 times [2022-04-27 13:05:46,011 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:05:46,011 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [334634436] [2022-04-27 13:05:46,011 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:46,011 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:05:46,024 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:05:46,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [248399537] [2022-04-27 13:05:46,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:46,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:46,024 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:05:46,025 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-27 13:05:46,031 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-27 13:05:46,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:46,086 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-27 13:05:46,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:46,099 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:46,660 INFO L272 TraceCheckUtils]: 0: Hoare triple {7035#true} call ULTIMATE.init(); {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {7035#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); {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7035#true} {7035#true} #103#return; {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L272 TraceCheckUtils]: 4: Hoare triple {7035#true} call #t~ret6 := main(); {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L290 TraceCheckUtils]: 5: Hoare triple {7035#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L272 TraceCheckUtils]: 6: Hoare triple {7035#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L290 TraceCheckUtils]: 7: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L290 TraceCheckUtils]: 8: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L290 TraceCheckUtils]: 9: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,661 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7035#true} {7035#true} #79#return; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 11: Hoare triple {7035#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L272 TraceCheckUtils]: 12: Hoare triple {7035#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 13: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 14: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 15: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7035#true} {7035#true} #81#return; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L272 TraceCheckUtils]: 17: Hoare triple {7035#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,662 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7035#true} {7035#true} #83#return; {7035#true} is VALID [2022-04-27 13:05:46,663 INFO L272 TraceCheckUtils]: 22: Hoare triple {7035#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,663 INFO L290 TraceCheckUtils]: 23: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,663 INFO L290 TraceCheckUtils]: 24: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,663 INFO L290 TraceCheckUtils]: 25: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,663 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7035#true} {7035#true} #85#return; {7035#true} is VALID [2022-04-27 13:05:46,675 INFO L290 TraceCheckUtils]: 27: Hoare triple {7035#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7121#(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-27 13:05:46,675 INFO L272 TraceCheckUtils]: 28: Hoare triple {7121#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,675 INFO L290 TraceCheckUtils]: 29: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,675 INFO L290 TraceCheckUtils]: 30: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,676 INFO L290 TraceCheckUtils]: 31: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,676 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7035#true} {7121#(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))} #87#return; {7121#(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-27 13:05:46,676 INFO L272 TraceCheckUtils]: 33: Hoare triple {7121#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,676 INFO L290 TraceCheckUtils]: 34: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,676 INFO L290 TraceCheckUtils]: 35: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,677 INFO L290 TraceCheckUtils]: 36: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,677 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {7035#true} {7121#(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))} #89#return; {7121#(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-27 13:05:46,678 INFO L290 TraceCheckUtils]: 38: Hoare triple {7121#(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; {7121#(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-27 13:05:46,678 INFO L290 TraceCheckUtils]: 39: Hoare triple {7121#(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);~c~0 := ~a~0;~k~0 := 0; {7158#(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-27 13:05:46,678 INFO L290 TraceCheckUtils]: 40: Hoare triple {7158#(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; {7158#(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-27 13:05:46,679 INFO L272 TraceCheckUtils]: 41: Hoare triple {7158#(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)); {7035#true} is VALID [2022-04-27 13:05:46,679 INFO L290 TraceCheckUtils]: 42: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,679 INFO L290 TraceCheckUtils]: 43: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,679 INFO L290 TraceCheckUtils]: 44: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,680 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {7035#true} {7158#(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))} #91#return; {7158#(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-27 13:05:46,680 INFO L272 TraceCheckUtils]: 46: Hoare triple {7158#(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)); {7035#true} is VALID [2022-04-27 13:05:46,680 INFO L290 TraceCheckUtils]: 47: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,680 INFO L290 TraceCheckUtils]: 48: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,680 INFO L290 TraceCheckUtils]: 49: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,681 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7035#true} {7158#(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))} #93#return; {7158#(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-27 13:05:46,681 INFO L272 TraceCheckUtils]: 51: Hoare triple {7158#(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)); {7035#true} is VALID [2022-04-27 13:05:46,681 INFO L290 TraceCheckUtils]: 52: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,681 INFO L290 TraceCheckUtils]: 53: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,681 INFO L290 TraceCheckUtils]: 54: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,682 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7035#true} {7158#(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; {7158#(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-27 13:05:46,682 INFO L272 TraceCheckUtils]: 56: Hoare triple {7158#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,682 INFO L290 TraceCheckUtils]: 57: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,682 INFO L290 TraceCheckUtils]: 58: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,682 INFO L290 TraceCheckUtils]: 59: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,683 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7035#true} {7158#(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; {7158#(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-27 13:05:46,683 INFO L290 TraceCheckUtils]: 61: Hoare triple {7158#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,684 INFO L290 TraceCheckUtils]: 62: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,684 INFO L272 TraceCheckUtils]: 63: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,684 INFO L290 TraceCheckUtils]: 64: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,684 INFO L290 TraceCheckUtils]: 65: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,684 INFO L290 TraceCheckUtils]: 66: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,685 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {7035#true} {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #91#return; {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,685 INFO L272 TraceCheckUtils]: 68: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= 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)); {7035#true} is VALID [2022-04-27 13:05:46,685 INFO L290 TraceCheckUtils]: 69: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,685 INFO L290 TraceCheckUtils]: 70: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,685 INFO L290 TraceCheckUtils]: 71: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,686 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {7035#true} {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #93#return; {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,686 INFO L272 TraceCheckUtils]: 73: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= 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)); {7035#true} is VALID [2022-04-27 13:05:46,686 INFO L290 TraceCheckUtils]: 74: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,686 INFO L290 TraceCheckUtils]: 75: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,686 INFO L290 TraceCheckUtils]: 76: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,687 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {7035#true} {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,687 INFO L272 TraceCheckUtils]: 78: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:46,687 INFO L290 TraceCheckUtils]: 79: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:46,687 INFO L290 TraceCheckUtils]: 80: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:46,687 INFO L290 TraceCheckUtils]: 81: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:46,688 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {7035#true} {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,688 INFO L290 TraceCheckUtils]: 83: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:46,689 INFO L290 TraceCheckUtils]: 84: Hoare triple {7225#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 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; {7295#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:05:46,689 INFO L290 TraceCheckUtils]: 85: Hoare triple {7295#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !false; {7295#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:05:46,690 INFO L290 TraceCheckUtils]: 86: Hoare triple {7295#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {7302#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:05:46,690 INFO L272 TraceCheckUtils]: 87: Hoare triple {7302#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {7306#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:46,691 INFO L290 TraceCheckUtils]: 88: Hoare triple {7306#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7310#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:46,691 INFO L290 TraceCheckUtils]: 89: Hoare triple {7310#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7036#false} is VALID [2022-04-27 13:05:46,691 INFO L290 TraceCheckUtils]: 90: Hoare triple {7036#false} assume !false; {7036#false} is VALID [2022-04-27 13:05:46,692 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-27 13:05:46,692 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:05:47,230 INFO L290 TraceCheckUtils]: 90: Hoare triple {7036#false} assume !false; {7036#false} is VALID [2022-04-27 13:05:47,231 INFO L290 TraceCheckUtils]: 89: Hoare triple {7310#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7036#false} is VALID [2022-04-27 13:05:47,232 INFO L290 TraceCheckUtils]: 88: Hoare triple {7306#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7310#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:47,232 INFO L272 TraceCheckUtils]: 87: Hoare triple {7326#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {7306#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:47,233 INFO L290 TraceCheckUtils]: 86: Hoare triple {7330#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {7326#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-27 13:05:47,233 INFO L290 TraceCheckUtils]: 85: Hoare triple {7330#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {7330#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 13:05:47,706 INFO L290 TraceCheckUtils]: 84: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 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; {7330#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 13:05:47,706 INFO L290 TraceCheckUtils]: 83: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} assume !(~c~0 >= ~b~0); {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,707 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {7035#true} {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #97#return; {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,707 INFO L290 TraceCheckUtils]: 81: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,707 INFO L290 TraceCheckUtils]: 80: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,707 INFO L290 TraceCheckUtils]: 79: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,707 INFO L272 TraceCheckUtils]: 78: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,708 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {7035#true} {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #95#return; {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,708 INFO L290 TraceCheckUtils]: 76: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,708 INFO L290 TraceCheckUtils]: 75: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,708 INFO L290 TraceCheckUtils]: 74: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,708 INFO L272 TraceCheckUtils]: 73: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,709 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {7035#true} {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #93#return; {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,709 INFO L290 TraceCheckUtils]: 71: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,709 INFO L290 TraceCheckUtils]: 70: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,709 INFO L290 TraceCheckUtils]: 69: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,709 INFO L272 TraceCheckUtils]: 68: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,710 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {7035#true} {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} #91#return; {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,710 INFO L290 TraceCheckUtils]: 66: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,710 INFO L290 TraceCheckUtils]: 65: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,710 INFO L290 TraceCheckUtils]: 64: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,710 INFO L272 TraceCheckUtils]: 63: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,710 INFO L290 TraceCheckUtils]: 62: Hoare triple {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} assume !false; {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,881 INFO L290 TraceCheckUtils]: 61: Hoare triple {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7337#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:05:47,882 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {7035#true} {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #97#return; {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:05:47,882 INFO L290 TraceCheckUtils]: 59: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,882 INFO L290 TraceCheckUtils]: 58: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,882 INFO L290 TraceCheckUtils]: 57: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,882 INFO L272 TraceCheckUtils]: 56: Hoare triple {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,883 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {7035#true} {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #95#return; {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:05:47,883 INFO L290 TraceCheckUtils]: 54: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,883 INFO L290 TraceCheckUtils]: 53: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,883 INFO L290 TraceCheckUtils]: 52: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,883 INFO L272 TraceCheckUtils]: 51: Hoare triple {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,884 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {7035#true} {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #93#return; {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:05:47,884 INFO L290 TraceCheckUtils]: 49: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,884 INFO L290 TraceCheckUtils]: 48: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,884 INFO L290 TraceCheckUtils]: 47: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,884 INFO L272 TraceCheckUtils]: 46: Hoare triple {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,884 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {7035#true} {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #91#return; {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:05:47,885 INFO L290 TraceCheckUtils]: 44: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,885 INFO L290 TraceCheckUtils]: 43: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,885 INFO L290 TraceCheckUtils]: 42: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,885 INFO L272 TraceCheckUtils]: 41: Hoare triple {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,885 INFO L290 TraceCheckUtils]: 40: Hoare triple {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} assume !false; {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:05:47,886 INFO L290 TraceCheckUtils]: 39: Hoare triple {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7407#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:05:47,886 INFO L290 TraceCheckUtils]: 38: Hoare triple {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} assume !false; {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 13:05:47,887 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {7035#true} {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} #89#return; {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 13:05:47,887 INFO L290 TraceCheckUtils]: 36: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,887 INFO L290 TraceCheckUtils]: 35: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,887 INFO L290 TraceCheckUtils]: 34: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,888 INFO L272 TraceCheckUtils]: 33: Hoare triple {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,888 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {7035#true} {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} #87#return; {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 13:05:47,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,888 INFO L290 TraceCheckUtils]: 30: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,888 INFO L290 TraceCheckUtils]: 29: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,889 INFO L272 TraceCheckUtils]: 28: Hoare triple {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,889 INFO L290 TraceCheckUtils]: 27: Hoare triple {7035#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7474#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 13:05:47,889 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7035#true} {7035#true} #85#return; {7035#true} is VALID [2022-04-27 13:05:47,889 INFO L290 TraceCheckUtils]: 25: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,889 INFO L290 TraceCheckUtils]: 24: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,889 INFO L290 TraceCheckUtils]: 23: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L272 TraceCheckUtils]: 22: Hoare triple {7035#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7035#true} {7035#true} #83#return; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 20: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 18: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L272 TraceCheckUtils]: 17: Hoare triple {7035#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7035#true} {7035#true} #81#return; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 15: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 14: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 13: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L272 TraceCheckUtils]: 12: Hoare triple {7035#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L290 TraceCheckUtils]: 11: Hoare triple {7035#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7035#true} is VALID [2022-04-27 13:05:47,890 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7035#true} {7035#true} #79#return; {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L290 TraceCheckUtils]: 9: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L290 TraceCheckUtils]: 8: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L290 TraceCheckUtils]: 7: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L272 TraceCheckUtils]: 6: Hoare triple {7035#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L290 TraceCheckUtils]: 5: Hoare triple {7035#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {7035#true} call #t~ret6 := main(); {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7035#true} {7035#true} #103#return; {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {7035#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); {7035#true} is VALID [2022-04-27 13:05:47,891 INFO L272 TraceCheckUtils]: 0: Hoare triple {7035#true} call ULTIMATE.init(); {7035#true} is VALID [2022-04-27 13:05:47,892 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-27 13:05:47,892 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:05:47,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [334634436] [2022-04-27 13:05:47,892 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:05:47,892 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [248399537] [2022-04-27 13:05:47,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [248399537] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:05:47,892 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:05:47,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-27 13:05:47,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [409413800] [2022-04-27 13:05:47,893 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:05:47,893 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) Word has length 91 [2022-04-27 13:05:47,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:05:47,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) [2022-04-27 13:05:48,357 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:48,357 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:05:48,357 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:05:48,358 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:05:48,358 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:05:48,358 INFO L87 Difference]: Start difference. First operand 139 states and 176 transitions. Second operand has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) [2022-04-27 13:05:52,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:52,646 INFO L93 Difference]: Finished difference Result 228 states and 311 transitions. [2022-04-27 13:05:52,646 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-27 13:05:52,647 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) Word has length 91 [2022-04-27 13:05:52,647 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:05:52,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) [2022-04-27 13:05:52,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 176 transitions. [2022-04-27 13:05:52,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) [2022-04-27 13:05:52,654 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 176 transitions. [2022-04-27 13:05:52,654 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 176 transitions. [2022-04-27 13:05:54,173 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-27 13:05:54,178 INFO L225 Difference]: With dead ends: 228 [2022-04-27 13:05:54,178 INFO L226 Difference]: Without dead ends: 220 [2022-04-27 13:05:54,179 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=178, Invalid=692, Unknown=0, NotChecked=0, Total=870 [2022-04-27 13:05:54,180 INFO L413 NwaCegarLoop]: 78 mSDtfsCounter, 50 mSDsluCounter, 259 mSDsCounter, 0 mSdLazyCounter, 598 mSolverCounterSat, 100 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 337 SdHoareTripleChecker+Invalid, 698 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 100 IncrementalHoareTripleChecker+Valid, 598 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.7s IncrementalHoareTripleChecker+Time [2022-04-27 13:05:54,180 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 337 Invalid, 698 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [100 Valid, 598 Invalid, 0 Unknown, 0 Unchecked, 1.7s Time] [2022-04-27 13:05:54,180 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 220 states. [2022-04-27 13:05:54,487 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 220 to 216. [2022-04-27 13:05:54,487 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:05:54,488 INFO L82 GeneralOperation]: Start isEquivalent. First operand 220 states. Second operand has 216 states, 116 states have (on average 1.1810344827586208) internal successors, (137), 117 states have internal predecessors, (137), 81 states have call successors, (81), 19 states have call predecessors, (81), 18 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:05:54,488 INFO L74 IsIncluded]: Start isIncluded. First operand 220 states. Second operand has 216 states, 116 states have (on average 1.1810344827586208) internal successors, (137), 117 states have internal predecessors, (137), 81 states have call successors, (81), 19 states have call predecessors, (81), 18 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:05:54,489 INFO L87 Difference]: Start difference. First operand 220 states. Second operand has 216 states, 116 states have (on average 1.1810344827586208) internal successors, (137), 117 states have internal predecessors, (137), 81 states have call successors, (81), 19 states have call predecessors, (81), 18 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:05:54,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:54,495 INFO L93 Difference]: Finished difference Result 220 states and 301 transitions. [2022-04-27 13:05:54,496 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 301 transitions. [2022-04-27 13:05:54,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:54,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:54,497 INFO L74 IsIncluded]: Start isIncluded. First operand has 216 states, 116 states have (on average 1.1810344827586208) internal successors, (137), 117 states have internal predecessors, (137), 81 states have call successors, (81), 19 states have call predecessors, (81), 18 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) Second operand 220 states. [2022-04-27 13:05:54,498 INFO L87 Difference]: Start difference. First operand has 216 states, 116 states have (on average 1.1810344827586208) internal successors, (137), 117 states have internal predecessors, (137), 81 states have call successors, (81), 19 states have call predecessors, (81), 18 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) Second operand 220 states. [2022-04-27 13:05:54,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:54,503 INFO L93 Difference]: Finished difference Result 220 states and 301 transitions. [2022-04-27 13:05:54,504 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 301 transitions. [2022-04-27 13:05:54,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:54,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:54,504 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:05:54,504 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:05:54,505 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 216 states, 116 states have (on average 1.1810344827586208) internal successors, (137), 117 states have internal predecessors, (137), 81 states have call successors, (81), 19 states have call predecessors, (81), 18 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:05:54,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 216 states to 216 states and 297 transitions. [2022-04-27 13:05:54,512 INFO L78 Accepts]: Start accepts. Automaton has 216 states and 297 transitions. Word has length 91 [2022-04-27 13:05:54,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:05:54,512 INFO L495 AbstractCegarLoop]: Abstraction has 216 states and 297 transitions. [2022-04-27 13:05:54,512 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 12 states have (on average 2.75) internal successors, (33), 13 states have internal predecessors, (33), 9 states have call successors, (28), 2 states have call predecessors, (28), 1 states have return successors, (25), 7 states have call predecessors, (25), 7 states have call successors, (25) [2022-04-27 13:05:54,512 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 297 transitions. [2022-04-27 13:05:54,513 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-27 13:05:54,513 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:05:54,513 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:05:54,536 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-27 13:05:54,732 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-27 13:05:54,733 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:05:54,733 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:05:54,733 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 1 times [2022-04-27 13:05:54,733 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:05:54,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [50716581] [2022-04-27 13:05:54,733 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:54,733 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:05:54,747 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:05:54,747 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2126907507] [2022-04-27 13:05:54,747 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:54,748 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:54,748 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:05:54,748 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-27 13:05:54,753 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-27 13:05:54,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:54,821 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 59 conjunts are in the unsatisfiable core [2022-04-27 13:05:54,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:54,839 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:55,903 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8765#true} is VALID [2022-04-27 13:05:55,903 INFO L290 TraceCheckUtils]: 1: Hoare triple {8765#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8765#true} is VALID [2022-04-27 13:05:55,903 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,903 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #103#return; {8765#true} is VALID [2022-04-27 13:05:55,903 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret6 := main(); {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 5: Hoare triple {8765#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L272 TraceCheckUtils]: 6: Hoare triple {8765#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 7: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 8: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 9: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8765#true} {8765#true} #79#return; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 11: Hoare triple {8765#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L272 TraceCheckUtils]: 12: Hoare triple {8765#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 13: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 14: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L290 TraceCheckUtils]: 15: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8765#true} {8765#true} #81#return; {8765#true} is VALID [2022-04-27 13:05:55,904 INFO L272 TraceCheckUtils]: 17: Hoare triple {8765#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L290 TraceCheckUtils]: 18: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L290 TraceCheckUtils]: 19: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L290 TraceCheckUtils]: 20: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8765#true} {8765#true} #83#return; {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L272 TraceCheckUtils]: 22: Hoare triple {8765#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L290 TraceCheckUtils]: 23: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L290 TraceCheckUtils]: 24: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L290 TraceCheckUtils]: 25: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,905 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8765#true} {8765#true} #85#return; {8765#true} is VALID [2022-04-27 13:05:55,912 INFO L290 TraceCheckUtils]: 27: Hoare triple {8765#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,912 INFO L272 TraceCheckUtils]: 28: Hoare triple {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,912 INFO L290 TraceCheckUtils]: 29: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,912 INFO L290 TraceCheckUtils]: 30: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,912 INFO L290 TraceCheckUtils]: 31: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,913 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8765#true} {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,913 INFO L272 TraceCheckUtils]: 33: Hoare triple {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,913 INFO L290 TraceCheckUtils]: 34: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,913 INFO L290 TraceCheckUtils]: 35: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,913 INFO L290 TraceCheckUtils]: 36: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,914 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8765#true} {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,915 INFO L290 TraceCheckUtils]: 38: Hoare triple {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,916 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,916 INFO L290 TraceCheckUtils]: 40: Hoare triple {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,916 INFO L272 TraceCheckUtils]: 41: Hoare triple {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,916 INFO L290 TraceCheckUtils]: 42: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,916 INFO L290 TraceCheckUtils]: 43: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,916 INFO L290 TraceCheckUtils]: 44: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,918 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8765#true} {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,918 INFO L272 TraceCheckUtils]: 46: Hoare triple {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {8765#true} is VALID [2022-04-27 13:05:55,918 INFO L290 TraceCheckUtils]: 47: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,918 INFO L290 TraceCheckUtils]: 48: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,918 INFO L290 TraceCheckUtils]: 49: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,919 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8765#true} {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,919 INFO L272 TraceCheckUtils]: 51: Hoare triple {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,919 INFO L290 TraceCheckUtils]: 52: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,919 INFO L290 TraceCheckUtils]: 53: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,919 INFO L290 TraceCheckUtils]: 54: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,920 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8765#true} {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,920 INFO L272 TraceCheckUtils]: 56: Hoare triple {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,920 INFO L290 TraceCheckUtils]: 57: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,921 INFO L290 TraceCheckUtils]: 58: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,921 INFO L290 TraceCheckUtils]: 59: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,922 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8765#true} {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,923 INFO L290 TraceCheckUtils]: 61: Hoare triple {8888#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8955#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,924 INFO L290 TraceCheckUtils]: 62: Hoare triple {8955#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {8955#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,924 INFO L272 TraceCheckUtils]: 63: Hoare triple {8955#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,924 INFO L290 TraceCheckUtils]: 64: Hoare triple {8765#true} ~cond := #in~cond; {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:55,925 INFO L290 TraceCheckUtils]: 65: Hoare triple {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,925 INFO L290 TraceCheckUtils]: 66: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,927 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {8955#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,927 INFO L272 TraceCheckUtils]: 68: Hoare triple {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {8765#true} is VALID [2022-04-27 13:05:55,927 INFO L290 TraceCheckUtils]: 69: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,927 INFO L290 TraceCheckUtils]: 70: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,927 INFO L290 TraceCheckUtils]: 71: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,928 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8765#true} {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #93#return; {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,928 INFO L272 TraceCheckUtils]: 73: Hoare triple {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {8765#true} is VALID [2022-04-27 13:05:55,929 INFO L290 TraceCheckUtils]: 74: Hoare triple {8765#true} ~cond := #in~cond; {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:55,929 INFO L290 TraceCheckUtils]: 75: Hoare triple {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,930 INFO L290 TraceCheckUtils]: 76: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,931 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #95#return; {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,931 INFO L272 TraceCheckUtils]: 78: Hoare triple {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,931 INFO L290 TraceCheckUtils]: 79: Hoare triple {8765#true} ~cond := #in~cond; {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:55,932 INFO L290 TraceCheckUtils]: 80: Hoare triple {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,932 INFO L290 TraceCheckUtils]: 81: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,933 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {8976#(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_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #97#return; {9022#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,934 INFO L290 TraceCheckUtils]: 83: Hoare triple {9022#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {9022#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~p~0 1))} is VALID [2022-04-27 13:05:55,935 INFO L290 TraceCheckUtils]: 84: Hoare triple {9022#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~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; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,935 INFO L290 TraceCheckUtils]: 85: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,936 INFO L290 TraceCheckUtils]: 86: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,936 INFO L290 TraceCheckUtils]: 87: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,936 INFO L272 TraceCheckUtils]: 88: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,936 INFO L290 TraceCheckUtils]: 89: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,936 INFO L290 TraceCheckUtils]: 90: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,936 INFO L290 TraceCheckUtils]: 91: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,937 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {8765#true} {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,937 INFO L272 TraceCheckUtils]: 93: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,937 INFO L290 TraceCheckUtils]: 94: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:55,938 INFO L290 TraceCheckUtils]: 95: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:55,938 INFO L290 TraceCheckUtils]: 96: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:55,939 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {8765#true} {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,939 INFO L272 TraceCheckUtils]: 98: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:55,939 INFO L290 TraceCheckUtils]: 99: Hoare triple {8765#true} ~cond := #in~cond; {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:55,939 INFO L290 TraceCheckUtils]: 100: Hoare triple {8965#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,940 INFO L290 TraceCheckUtils]: 101: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:55,940 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:55,943 INFO L272 TraceCheckUtils]: 103: Hoare triple {9029#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9087#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:55,943 INFO L290 TraceCheckUtils]: 104: Hoare triple {9087#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9091#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:55,944 INFO L290 TraceCheckUtils]: 105: Hoare triple {9091#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8766#false} is VALID [2022-04-27 13:05:55,944 INFO L290 TraceCheckUtils]: 106: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-27 13:05:55,944 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 81 proven. 43 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-27 13:05:55,944 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:07:33,924 INFO L290 TraceCheckUtils]: 106: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-27 13:07:33,925 INFO L290 TraceCheckUtils]: 105: Hoare triple {9091#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8766#false} is VALID [2022-04-27 13:07:33,925 INFO L290 TraceCheckUtils]: 104: Hoare triple {9087#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9091#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:07:33,926 INFO L272 TraceCheckUtils]: 103: Hoare triple {9107#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {9087#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:07:33,927 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {9107#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} is VALID [2022-04-27 13:07:33,927 INFO L290 TraceCheckUtils]: 101: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:33,927 INFO L290 TraceCheckUtils]: 100: Hoare triple {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:33,927 INFO L290 TraceCheckUtils]: 99: Hoare triple {8765#true} ~cond := #in~cond; {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:33,928 INFO L272 TraceCheckUtils]: 98: Hoare triple {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {8765#true} is VALID [2022-04-27 13:07:33,928 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {8765#true} {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #93#return; {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:33,928 INFO L290 TraceCheckUtils]: 96: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:33,928 INFO L290 TraceCheckUtils]: 95: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:33,928 INFO L290 TraceCheckUtils]: 94: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:33,928 INFO L272 TraceCheckUtils]: 93: Hoare triple {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {8765#true} is VALID [2022-04-27 13:07:33,929 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {8765#true} {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #91#return; {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:33,929 INFO L290 TraceCheckUtils]: 91: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:33,929 INFO L290 TraceCheckUtils]: 90: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:33,929 INFO L290 TraceCheckUtils]: 89: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:33,929 INFO L272 TraceCheckUtils]: 88: Hoare triple {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {8765#true} is VALID [2022-04-27 13:07:33,931 INFO L290 TraceCheckUtils]: 87: Hoare triple {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:33,932 INFO L290 TraceCheckUtils]: 86: Hoare triple {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:33,932 INFO L290 TraceCheckUtils]: 85: Hoare triple {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:35,939 WARN L290 TraceCheckUtils]: 84: Hoare triple {9167#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* 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; {9111#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is UNKNOWN [2022-04-27 13:07:35,940 INFO L290 TraceCheckUtils]: 83: Hoare triple {9167#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* 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); {9167#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* 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-27 13:07:35,941 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {9174#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* (+ (* (* 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)))} #97#return; {9167#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* 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-27 13:07:35,941 INFO L290 TraceCheckUtils]: 81: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:35,942 INFO L290 TraceCheckUtils]: 80: Hoare triple {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:35,942 INFO L290 TraceCheckUtils]: 79: Hoare triple {8765#true} ~cond := #in~cond; {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:35,942 INFO L272 TraceCheckUtils]: 78: Hoare triple {9174#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:35,943 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {9190#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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)))} #95#return; {9174#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= (+ (* (+ (* (* 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-27 13:07:35,944 INFO L290 TraceCheckUtils]: 76: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:35,944 INFO L290 TraceCheckUtils]: 75: Hoare triple {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:35,944 INFO L290 TraceCheckUtils]: 74: Hoare triple {8765#true} ~cond := #in~cond; {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:35,945 INFO L272 TraceCheckUtils]: 73: Hoare triple {9190#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:35,945 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8765#true} {9190#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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)))} #93#return; {9190#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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-27 13:07:35,945 INFO L290 TraceCheckUtils]: 71: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:35,945 INFO L290 TraceCheckUtils]: 70: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:35,945 INFO L290 TraceCheckUtils]: 69: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:35,946 INFO L272 TraceCheckUtils]: 68: Hoare triple {9190#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:35,947 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {9190#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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-27 13:07:35,947 INFO L290 TraceCheckUtils]: 66: Hoare triple {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:35,948 INFO L290 TraceCheckUtils]: 65: Hoare triple {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8969#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:35,948 INFO L290 TraceCheckUtils]: 64: Hoare triple {8765#true} ~cond := #in~cond; {9121#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:07:35,948 INFO L272 TraceCheckUtils]: 63: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~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)); {8765#true} is VALID [2022-04-27 13:07:35,949 INFO L290 TraceCheckUtils]: 62: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,105 INFO L290 TraceCheckUtils]: 61: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,107 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8765#true} {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #97#return; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,107 INFO L290 TraceCheckUtils]: 59: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,107 INFO L290 TraceCheckUtils]: 58: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,107 INFO L290 TraceCheckUtils]: 57: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,107 INFO L272 TraceCheckUtils]: 56: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,108 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8765#true} {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #95#return; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,108 INFO L290 TraceCheckUtils]: 54: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,108 INFO L290 TraceCheckUtils]: 53: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,108 INFO L290 TraceCheckUtils]: 52: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,108 INFO L272 TraceCheckUtils]: 51: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~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)); {8765#true} is VALID [2022-04-27 13:07:37,109 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8765#true} {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #93#return; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,109 INFO L290 TraceCheckUtils]: 49: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,109 INFO L290 TraceCheckUtils]: 48: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,109 INFO L290 TraceCheckUtils]: 47: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,109 INFO L272 TraceCheckUtils]: 46: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~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)); {8765#true} is VALID [2022-04-27 13:07:37,110 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8765#true} {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,110 INFO L290 TraceCheckUtils]: 44: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,110 INFO L290 TraceCheckUtils]: 43: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,110 INFO L290 TraceCheckUtils]: 42: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,111 INFO L272 TraceCheckUtils]: 41: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~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)); {8765#true} is VALID [2022-04-27 13:07:37,112 INFO L290 TraceCheckUtils]: 40: Hoare triple {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,112 INFO L290 TraceCheckUtils]: 39: Hoare triple {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {9221#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (+ (* (* 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_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:07:37,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:37,114 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {8765#true} {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #89#return; {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:37,114 INFO L290 TraceCheckUtils]: 36: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,114 INFO L290 TraceCheckUtils]: 35: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,114 INFO L290 TraceCheckUtils]: 34: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,114 INFO L272 TraceCheckUtils]: 33: Hoare triple {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,115 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {8765#true} {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #87#return; {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:37,115 INFO L290 TraceCheckUtils]: 31: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,115 INFO L290 TraceCheckUtils]: 30: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,115 INFO L290 TraceCheckUtils]: 29: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,115 INFO L272 TraceCheckUtils]: 28: Hoare triple {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 27: Hoare triple {8765#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {9306#(or (not (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0) (* main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~xy~0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:07:37,116 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8765#true} {8765#true} #85#return; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 25: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 24: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 23: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L272 TraceCheckUtils]: 22: Hoare triple {8765#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8765#true} {8765#true} #83#return; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 20: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 19: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 18: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L272 TraceCheckUtils]: 17: Hoare triple {8765#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8765#true} {8765#true} #81#return; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 15: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 14: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 13: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L272 TraceCheckUtils]: 12: Hoare triple {8765#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L290 TraceCheckUtils]: 11: Hoare triple {8765#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8765#true} is VALID [2022-04-27 13:07:37,116 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8765#true} {8765#true} #79#return; {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L290 TraceCheckUtils]: 9: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L290 TraceCheckUtils]: 8: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L290 TraceCheckUtils]: 7: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L272 TraceCheckUtils]: 6: Hoare triple {8765#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L290 TraceCheckUtils]: 5: Hoare triple {8765#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret6 := main(); {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #103#return; {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L290 TraceCheckUtils]: 1: Hoare triple {8765#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3); {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8765#true} is VALID [2022-04-27 13:07:37,117 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 85 proven. 37 refuted. 0 times theorem prover too weak. 198 trivial. 0 not checked. [2022-04-27 13:07:37,118 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:07:37,118 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [50716581] [2022-04-27 13:07:37,118 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:07:37,118 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2126907507] [2022-04-27 13:07:37,118 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2126907507] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:07:37,118 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:07:37,118 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 20 [2022-04-27 13:07:37,118 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [96642022] [2022-04-27 13:07:37,118 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:07:37,119 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) Word has length 107 [2022-04-27 13:07:37,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:07:37,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) [2022-04-27 13:07:41,238 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 101 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-27 13:07:41,239 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-27 13:07:41,239 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:07:41,239 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-27 13:07:41,239 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=285, Unknown=0, NotChecked=0, Total=380 [2022-04-27 13:07:41,239 INFO L87 Difference]: Start difference. First operand 216 states and 297 transitions. Second operand has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) [2022-04-27 13:07:50,233 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:07:55,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:55,431 INFO L93 Difference]: Finished difference Result 280 states and 390 transitions. [2022-04-27 13:07:55,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-27 13:07:55,432 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) Word has length 107 [2022-04-27 13:07:55,432 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:07:55,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) [2022-04-27 13:07:55,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 146 transitions. [2022-04-27 13:07:55,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) [2022-04-27 13:07:55,437 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 146 transitions. [2022-04-27 13:07:55,437 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 146 transitions. [2022-04-27 13:07:58,018 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 146 edges. 145 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:07:58,025 INFO L225 Difference]: With dead ends: 280 [2022-04-27 13:07:58,025 INFO L226 Difference]: Without dead ends: 278 [2022-04-27 13:07:58,025 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 192 SyntacticMatches, 3 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 134 ImplicationChecksByTransitivity, 4.9s TimeCoverageRelationStatistics Valid=165, Invalid=485, Unknown=0, NotChecked=0, Total=650 [2022-04-27 13:07:58,026 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 73 mSDsluCounter, 188 mSDsCounter, 0 mSdLazyCounter, 533 mSolverCounterSat, 119 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 231 SdHoareTripleChecker+Invalid, 653 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 119 IncrementalHoareTripleChecker+Valid, 533 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.7s IncrementalHoareTripleChecker+Time [2022-04-27 13:07:58,026 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 231 Invalid, 653 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [119 Valid, 533 Invalid, 1 Unknown, 0 Unchecked, 5.7s Time] [2022-04-27 13:07:58,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 278 states. [2022-04-27 13:07:58,434 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 278 to 274. [2022-04-27 13:07:58,435 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:07:58,435 INFO L82 GeneralOperation]: Start isEquivalent. First operand 278 states. Second operand has 274 states, 149 states have (on average 1.1812080536912752) internal successors, (176), 153 states have internal predecessors, (176), 105 states have call successors, (105), 20 states have call predecessors, (105), 19 states have return successors, (103), 100 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-27 13:07:58,436 INFO L74 IsIncluded]: Start isIncluded. First operand 278 states. Second operand has 274 states, 149 states have (on average 1.1812080536912752) internal successors, (176), 153 states have internal predecessors, (176), 105 states have call successors, (105), 20 states have call predecessors, (105), 19 states have return successors, (103), 100 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-27 13:07:58,436 INFO L87 Difference]: Start difference. First operand 278 states. Second operand has 274 states, 149 states have (on average 1.1812080536912752) internal successors, (176), 153 states have internal predecessors, (176), 105 states have call successors, (105), 20 states have call predecessors, (105), 19 states have return successors, (103), 100 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-27 13:07:58,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:58,445 INFO L93 Difference]: Finished difference Result 278 states and 388 transitions. [2022-04-27 13:07:58,445 INFO L276 IsEmpty]: Start isEmpty. Operand 278 states and 388 transitions. [2022-04-27 13:07:58,446 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:58,446 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:58,447 INFO L74 IsIncluded]: Start isIncluded. First operand has 274 states, 149 states have (on average 1.1812080536912752) internal successors, (176), 153 states have internal predecessors, (176), 105 states have call successors, (105), 20 states have call predecessors, (105), 19 states have return successors, (103), 100 states have call predecessors, (103), 103 states have call successors, (103) Second operand 278 states. [2022-04-27 13:07:58,447 INFO L87 Difference]: Start difference. First operand has 274 states, 149 states have (on average 1.1812080536912752) internal successors, (176), 153 states have internal predecessors, (176), 105 states have call successors, (105), 20 states have call predecessors, (105), 19 states have return successors, (103), 100 states have call predecessors, (103), 103 states have call successors, (103) Second operand 278 states. [2022-04-27 13:07:58,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:58,456 INFO L93 Difference]: Finished difference Result 278 states and 388 transitions. [2022-04-27 13:07:58,456 INFO L276 IsEmpty]: Start isEmpty. Operand 278 states and 388 transitions. [2022-04-27 13:07:58,457 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:58,457 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:58,457 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:07:58,458 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:07:58,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 274 states, 149 states have (on average 1.1812080536912752) internal successors, (176), 153 states have internal predecessors, (176), 105 states have call successors, (105), 20 states have call predecessors, (105), 19 states have return successors, (103), 100 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-27 13:07:58,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 274 states to 274 states and 384 transitions. [2022-04-27 13:07:58,468 INFO L78 Accepts]: Start accepts. Automaton has 274 states and 384 transitions. Word has length 107 [2022-04-27 13:07:58,468 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:07:58,468 INFO L495 AbstractCegarLoop]: Abstraction has 274 states and 384 transitions. [2022-04-27 13:07:58,468 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 16 states have (on average 2.4375) internal successors, (39), 15 states have internal predecessors, (39), 12 states have call successors, (33), 2 states have call predecessors, (33), 2 states have return successors, (31), 13 states have call predecessors, (31), 11 states have call successors, (31) [2022-04-27 13:07:58,468 INFO L276 IsEmpty]: Start isEmpty. Operand 274 states and 384 transitions. [2022-04-27 13:07:58,469 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-27 13:07:58,469 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:07:58,469 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 6, 6, 6, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:07:58,492 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-27 13:07:58,687 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-27 13:07:58,688 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:07:58,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:07:58,688 INFO L85 PathProgramCache]: Analyzing trace with hash -1268192944, now seen corresponding path program 2 times [2022-04-27 13:07:58,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:07:58,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1680607704] [2022-04-27 13:07:58,688 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:58,688 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:07:58,704 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:07:58,704 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [272225421] [2022-04-27 13:07:58,704 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:07:58,705 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:07:58,705 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:07:58,706 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-27 13:07:58,707 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-27 13:07:58,763 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:07:58,764 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:07:58,764 INFO L263 TraceCheckSpWp]: Trace formula consists of 291 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:07:58,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:58,782 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:07:59,042 INFO L272 TraceCheckUtils]: 0: Hoare triple {10878#true} call ULTIMATE.init(); {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 1: Hoare triple {10878#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); {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10878#true} {10878#true} #103#return; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L272 TraceCheckUtils]: 4: Hoare triple {10878#true} call #t~ret6 := main(); {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 5: Hoare triple {10878#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L272 TraceCheckUtils]: 6: Hoare triple {10878#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 7: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 8: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 9: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10878#true} {10878#true} #79#return; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L290 TraceCheckUtils]: 11: Hoare triple {10878#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10878#true} is VALID [2022-04-27 13:07:59,043 INFO L272 TraceCheckUtils]: 12: Hoare triple {10878#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 13: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 14: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 15: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10878#true} {10878#true} #81#return; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L272 TraceCheckUtils]: 17: Hoare triple {10878#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 18: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 19: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 20: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10878#true} {10878#true} #83#return; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L272 TraceCheckUtils]: 22: Hoare triple {10878#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 23: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 24: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 25: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10878#true} {10878#true} #85#return; {10878#true} is VALID [2022-04-27 13:07:59,044 INFO L290 TraceCheckUtils]: 27: Hoare triple {10878#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L272 TraceCheckUtils]: 28: Hoare triple {10878#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 29: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 30: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 31: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {10878#true} {10878#true} #87#return; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L272 TraceCheckUtils]: 33: Hoare triple {10878#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 34: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 35: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 36: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10878#true} {10878#true} #89#return; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 38: Hoare triple {10878#true} assume !false; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 39: Hoare triple {10878#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L290 TraceCheckUtils]: 40: Hoare triple {10878#true} assume !false; {10878#true} is VALID [2022-04-27 13:07:59,045 INFO L272 TraceCheckUtils]: 41: Hoare triple {10878#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 42: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 43: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 44: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {10878#true} {10878#true} #91#return; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L272 TraceCheckUtils]: 46: Hoare triple {10878#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 47: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 48: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 49: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {10878#true} {10878#true} #93#return; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L272 TraceCheckUtils]: 51: Hoare triple {10878#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 52: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 53: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L290 TraceCheckUtils]: 54: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,046 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10878#true} {10878#true} #95#return; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L272 TraceCheckUtils]: 56: Hoare triple {10878#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 57: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 58: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 59: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {10878#true} {10878#true} #97#return; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 61: Hoare triple {10878#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 62: Hoare triple {10878#true} assume !false; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L272 TraceCheckUtils]: 63: Hoare triple {10878#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 64: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 65: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 66: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {10878#true} {10878#true} #91#return; {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L272 TraceCheckUtils]: 68: Hoare triple {10878#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,047 INFO L290 TraceCheckUtils]: 69: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 70: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 71: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {10878#true} {10878#true} #93#return; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L272 TraceCheckUtils]: 73: Hoare triple {10878#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 74: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 75: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 76: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {10878#true} {10878#true} #95#return; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L272 TraceCheckUtils]: 78: Hoare triple {10878#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 79: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 80: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L290 TraceCheckUtils]: 81: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,048 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {10878#true} {10878#true} #97#return; {10878#true} is VALID [2022-04-27 13:07:59,051 INFO L290 TraceCheckUtils]: 83: Hoare triple {10878#true} assume !(~c~0 >= ~b~0); {11132#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-27 13:07:59,052 INFO L290 TraceCheckUtils]: 84: Hoare triple {11132#(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; {11136#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:07:59,052 INFO L290 TraceCheckUtils]: 85: Hoare triple {11136#(< main_~b~0 main_~a~0)} assume !false; {11136#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:07:59,052 INFO L290 TraceCheckUtils]: 86: Hoare triple {11136#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11143#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:59,053 INFO L290 TraceCheckUtils]: 87: Hoare triple {11143#(< main_~b~0 main_~c~0)} assume !false; {11143#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:59,053 INFO L272 TraceCheckUtils]: 88: Hoare triple {11143#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,053 INFO L290 TraceCheckUtils]: 89: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,053 INFO L290 TraceCheckUtils]: 90: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,053 INFO L290 TraceCheckUtils]: 91: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,054 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {10878#true} {11143#(< main_~b~0 main_~c~0)} #91#return; {11143#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:59,054 INFO L272 TraceCheckUtils]: 93: Hoare triple {11143#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,054 INFO L290 TraceCheckUtils]: 94: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,054 INFO L290 TraceCheckUtils]: 95: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,054 INFO L290 TraceCheckUtils]: 96: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,054 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {10878#true} {11143#(< main_~b~0 main_~c~0)} #93#return; {11143#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:59,055 INFO L272 TraceCheckUtils]: 98: Hoare triple {11143#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,055 INFO L290 TraceCheckUtils]: 99: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,055 INFO L290 TraceCheckUtils]: 100: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,055 INFO L290 TraceCheckUtils]: 101: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,055 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {10878#true} {11143#(< main_~b~0 main_~c~0)} #95#return; {11143#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:59,055 INFO L272 TraceCheckUtils]: 103: Hoare triple {11143#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10878#true} is VALID [2022-04-27 13:07:59,056 INFO L290 TraceCheckUtils]: 104: Hoare triple {10878#true} ~cond := #in~cond; {10878#true} is VALID [2022-04-27 13:07:59,056 INFO L290 TraceCheckUtils]: 105: Hoare triple {10878#true} assume !(0 == ~cond); {10878#true} is VALID [2022-04-27 13:07:59,056 INFO L290 TraceCheckUtils]: 106: Hoare triple {10878#true} assume true; {10878#true} is VALID [2022-04-27 13:07:59,056 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {10878#true} {11143#(< main_~b~0 main_~c~0)} #97#return; {11143#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 108: Hoare triple {11143#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 109: Hoare triple {10879#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; {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 110: Hoare triple {10879#false} assume !false; {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 111: Hoare triple {10879#false} assume !(0 != ~b~0); {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L272 TraceCheckUtils]: 112: Hoare triple {10879#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 113: Hoare triple {10879#false} ~cond := #in~cond; {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 114: Hoare triple {10879#false} assume 0 == ~cond; {10879#false} is VALID [2022-04-27 13:07:59,057 INFO L290 TraceCheckUtils]: 115: Hoare triple {10879#false} assume !false; {10879#false} is VALID [2022-04-27 13:07:59,058 INFO L134 CoverageAnalysis]: Checked inductivity of 373 backedges. 43 proven. 0 refuted. 0 times theorem prover too weak. 330 trivial. 0 not checked. [2022-04-27 13:07:59,058 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:07:59,058 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:07:59,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1680607704] [2022-04-27 13:07:59,058 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:07:59,058 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [272225421] [2022-04-27 13:07:59,058 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [272225421] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:07:59,058 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:07:59,058 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:07:59,059 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1268633782] [2022-04-27 13:07:59,059 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:07:59,059 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) Word has length 116 [2022-04-27 13:07:59,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:07:59,059 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2022-04-27 13:07:59,101 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-27 13:07:59,101 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:07:59,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:07:59,101 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:07:59,101 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:07:59,102 INFO L87 Difference]: Start difference. First operand 274 states and 384 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2022-04-27 13:07:59,734 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:59,735 INFO L93 Difference]: Finished difference Result 360 states and 502 transitions. [2022-04-27 13:07:59,735 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:07:59,735 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) Word has length 116 [2022-04-27 13:07:59,735 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:07:59,735 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2022-04-27 13:07:59,736 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-27 13:07:59,737 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2022-04-27 13:07:59,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-27 13:07:59,738 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2022-04-27 13:07:59,812 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-27 13:07:59,817 INFO L225 Difference]: With dead ends: 360 [2022-04-27 13:07:59,817 INFO L226 Difference]: Without dead ends: 236 [2022-04-27 13:07:59,818 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 112 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-27 13:07:59,818 INFO L413 NwaCegarLoop]: 56 mSDtfsCounter, 6 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:07:59,819 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 161 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:07:59,819 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 236 states. [2022-04-27 13:08:00,184 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 236 to 222. [2022-04-27 13:08:00,184 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:08:00,185 INFO L82 GeneralOperation]: Start isEquivalent. First operand 236 states. Second operand has 222 states, 121 states have (on average 1.140495867768595) internal successors, (138), 123 states have internal predecessors, (138), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 78 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:08:00,185 INFO L74 IsIncluded]: Start isIncluded. First operand 236 states. Second operand has 222 states, 121 states have (on average 1.140495867768595) internal successors, (138), 123 states have internal predecessors, (138), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 78 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:08:00,186 INFO L87 Difference]: Start difference. First operand 236 states. Second operand has 222 states, 121 states have (on average 1.140495867768595) internal successors, (138), 123 states have internal predecessors, (138), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 78 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:08:00,192 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:00,192 INFO L93 Difference]: Finished difference Result 236 states and 317 transitions. [2022-04-27 13:08:00,192 INFO L276 IsEmpty]: Start isEmpty. Operand 236 states and 317 transitions. [2022-04-27 13:08:00,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:00,193 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:00,194 INFO L74 IsIncluded]: Start isIncluded. First operand has 222 states, 121 states have (on average 1.140495867768595) internal successors, (138), 123 states have internal predecessors, (138), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 78 states have call predecessors, (79), 79 states have call successors, (79) Second operand 236 states. [2022-04-27 13:08:00,194 INFO L87 Difference]: Start difference. First operand has 222 states, 121 states have (on average 1.140495867768595) internal successors, (138), 123 states have internal predecessors, (138), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 78 states have call predecessors, (79), 79 states have call successors, (79) Second operand 236 states. [2022-04-27 13:08:00,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:08:00,201 INFO L93 Difference]: Finished difference Result 236 states and 317 transitions. [2022-04-27 13:08:00,201 INFO L276 IsEmpty]: Start isEmpty. Operand 236 states and 317 transitions. [2022-04-27 13:08:00,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:08:00,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:08:00,202 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:08:00,202 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:08:00,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 222 states, 121 states have (on average 1.140495867768595) internal successors, (138), 123 states have internal predecessors, (138), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 78 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:08:00,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 222 states to 222 states and 298 transitions. [2022-04-27 13:08:00,209 INFO L78 Accepts]: Start accepts. Automaton has 222 states and 298 transitions. Word has length 116 [2022-04-27 13:08:00,209 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:08:00,209 INFO L495 AbstractCegarLoop]: Abstraction has 222 states and 298 transitions. [2022-04-27 13:08:00,209 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, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2022-04-27 13:08:00,210 INFO L276 IsEmpty]: Start isEmpty. Operand 222 states and 298 transitions. [2022-04-27 13:08:00,211 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 139 [2022-04-27 13:08:00,211 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:08:00,211 INFO L195 NwaCegarLoop]: trace histogram [17, 16, 16, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:08:00,228 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-27 13:08:00,419 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-27 13:08:00,419 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:08:00,420 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:08:00,420 INFO L85 PathProgramCache]: Analyzing trace with hash -896647763, now seen corresponding path program 3 times [2022-04-27 13:08:00,420 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:08:00,420 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1782913694] [2022-04-27 13:08:00,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:08:00,420 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:08:00,440 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:08:00,440 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [337169174] [2022-04-27 13:08:00,440 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:08:00,440 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:08:00,440 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:08:00,442 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-27 13:08:00,449 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-27 13:08:00,528 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 13:08:00,528 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:08:00,529 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 60 conjunts are in the unsatisfiable core [2022-04-27 13:08:00,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:08:00,553 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:08:02,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {12627#true} call ULTIMATE.init(); {12627#true} is VALID [2022-04-27 13:08:02,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {12627#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); {12627#true} is VALID [2022-04-27 13:08:02,026 INFO L290 TraceCheckUtils]: 2: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,026 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12627#true} {12627#true} #103#return; {12627#true} is VALID [2022-04-27 13:08:02,026 INFO L272 TraceCheckUtils]: 4: Hoare triple {12627#true} call #t~ret6 := main(); {12627#true} is VALID [2022-04-27 13:08:02,026 INFO L290 TraceCheckUtils]: 5: Hoare triple {12627#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {12627#true} is VALID [2022-04-27 13:08:02,026 INFO L272 TraceCheckUtils]: 6: Hoare triple {12627#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L290 TraceCheckUtils]: 7: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L290 TraceCheckUtils]: 8: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L290 TraceCheckUtils]: 9: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12627#true} {12627#true} #79#return; {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L290 TraceCheckUtils]: 11: Hoare triple {12627#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L272 TraceCheckUtils]: 12: Hoare triple {12627#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,027 INFO L290 TraceCheckUtils]: 13: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,029 INFO L290 TraceCheckUtils]: 14: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,029 INFO L290 TraceCheckUtils]: 15: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,029 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {12627#true} {12627#true} #81#return; {12627#true} is VALID [2022-04-27 13:08:02,029 INFO L272 TraceCheckUtils]: 17: Hoare triple {12627#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,029 INFO L290 TraceCheckUtils]: 18: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L290 TraceCheckUtils]: 19: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L290 TraceCheckUtils]: 20: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12627#true} {12627#true} #83#return; {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L272 TraceCheckUtils]: 22: Hoare triple {12627#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L290 TraceCheckUtils]: 23: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L290 TraceCheckUtils]: 25: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,030 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12627#true} {12627#true} #85#return; {12627#true} is VALID [2022-04-27 13:08:02,033 INFO L290 TraceCheckUtils]: 27: Hoare triple {12627#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {12713#(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-27 13:08:02,033 INFO L272 TraceCheckUtils]: 28: Hoare triple {12713#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,033 INFO L290 TraceCheckUtils]: 29: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,033 INFO L290 TraceCheckUtils]: 30: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,033 INFO L290 TraceCheckUtils]: 31: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,034 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {12627#true} {12713#(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))} #87#return; {12713#(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-27 13:08:02,034 INFO L272 TraceCheckUtils]: 33: Hoare triple {12713#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,034 INFO L290 TraceCheckUtils]: 34: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,034 INFO L290 TraceCheckUtils]: 35: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,034 INFO L290 TraceCheckUtils]: 36: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,034 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {12627#true} {12713#(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))} #89#return; {12713#(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-27 13:08:02,035 INFO L290 TraceCheckUtils]: 38: Hoare triple {12713#(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; {12713#(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-27 13:08:02,036 INFO L290 TraceCheckUtils]: 39: Hoare triple {12713#(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);~c~0 := ~a~0;~k~0 := 0; {12750#(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-27 13:08:02,036 INFO L290 TraceCheckUtils]: 40: Hoare triple {12750#(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; {12750#(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-27 13:08:02,036 INFO L272 TraceCheckUtils]: 41: Hoare triple {12750#(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)); {12627#true} is VALID [2022-04-27 13:08:02,036 INFO L290 TraceCheckUtils]: 42: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,036 INFO L290 TraceCheckUtils]: 43: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,036 INFO L290 TraceCheckUtils]: 44: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,037 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {12627#true} {12750#(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))} #91#return; {12750#(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-27 13:08:02,037 INFO L272 TraceCheckUtils]: 46: Hoare triple {12750#(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)); {12627#true} is VALID [2022-04-27 13:08:02,037 INFO L290 TraceCheckUtils]: 47: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,037 INFO L290 TraceCheckUtils]: 48: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,037 INFO L290 TraceCheckUtils]: 49: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,038 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {12627#true} {12750#(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))} #93#return; {12750#(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-27 13:08:02,038 INFO L272 TraceCheckUtils]: 51: Hoare triple {12750#(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)); {12627#true} is VALID [2022-04-27 13:08:02,038 INFO L290 TraceCheckUtils]: 52: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,038 INFO L290 TraceCheckUtils]: 53: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,038 INFO L290 TraceCheckUtils]: 54: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,039 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {12627#true} {12750#(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; {12750#(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-27 13:08:02,039 INFO L272 TraceCheckUtils]: 56: Hoare triple {12750#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,039 INFO L290 TraceCheckUtils]: 57: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,039 INFO L290 TraceCheckUtils]: 58: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,039 INFO L290 TraceCheckUtils]: 59: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,039 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {12627#true} {12750#(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; {12750#(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-27 13:08:02,040 INFO L290 TraceCheckUtils]: 61: Hoare triple {12750#(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); {12750#(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-27 13:08:02,040 INFO L290 TraceCheckUtils]: 62: Hoare triple {12750#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12820#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,041 INFO L290 TraceCheckUtils]: 63: Hoare triple {12820#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {12820#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,041 INFO L290 TraceCheckUtils]: 64: Hoare triple {12820#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,041 INFO L290 TraceCheckUtils]: 65: Hoare triple {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,041 INFO L272 TraceCheckUtils]: 66: Hoare triple {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L290 TraceCheckUtils]: 67: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L290 TraceCheckUtils]: 68: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L290 TraceCheckUtils]: 69: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {12627#true} {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #91#return; {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,042 INFO L272 TraceCheckUtils]: 71: Hoare triple {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L290 TraceCheckUtils]: 72: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L290 TraceCheckUtils]: 73: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,042 INFO L290 TraceCheckUtils]: 74: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,043 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {12627#true} {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #93#return; {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,043 INFO L272 TraceCheckUtils]: 76: Hoare triple {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,043 INFO L290 TraceCheckUtils]: 77: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,043 INFO L290 TraceCheckUtils]: 78: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,043 INFO L290 TraceCheckUtils]: 79: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,044 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {12627#true} {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #95#return; {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,044 INFO L272 TraceCheckUtils]: 81: Hoare triple {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,044 INFO L290 TraceCheckUtils]: 82: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,044 INFO L290 TraceCheckUtils]: 83: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,044 INFO L290 TraceCheckUtils]: 84: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,045 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {12627#true} {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #97#return; {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,046 INFO L290 TraceCheckUtils]: 86: Hoare triple {12827#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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-27 13:08:02,046 INFO L290 TraceCheckUtils]: 87: Hoare triple {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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-27 13:08:02,046 INFO L272 TraceCheckUtils]: 88: Hoare triple {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,046 INFO L290 TraceCheckUtils]: 89: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,046 INFO L290 TraceCheckUtils]: 90: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,046 INFO L290 TraceCheckUtils]: 91: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,047 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {12627#true} {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #91#return; {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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-27 13:08:02,047 INFO L272 TraceCheckUtils]: 93: Hoare triple {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,047 INFO L290 TraceCheckUtils]: 94: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,047 INFO L290 TraceCheckUtils]: 95: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,047 INFO L290 TraceCheckUtils]: 96: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,048 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {12627#true} {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #93#return; {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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-27 13:08:02,048 INFO L272 TraceCheckUtils]: 98: Hoare triple {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,048 INFO L290 TraceCheckUtils]: 99: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,048 INFO L290 TraceCheckUtils]: 100: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,048 INFO L290 TraceCheckUtils]: 101: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,049 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {12627#true} {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #95#return; {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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-27 13:08:02,049 INFO L272 TraceCheckUtils]: 103: Hoare triple {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,049 INFO L290 TraceCheckUtils]: 104: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,049 INFO L290 TraceCheckUtils]: 105: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,049 INFO L290 TraceCheckUtils]: 106: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,050 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {12627#true} {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #97#return; {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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-27 13:08:02,050 INFO L290 TraceCheckUtils]: 108: Hoare triple {12894#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {12961#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,051 INFO L290 TraceCheckUtils]: 109: Hoare triple {12961#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 1))} assume !false; {12961#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,051 INFO L272 TraceCheckUtils]: 110: Hoare triple {12961#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,051 INFO L290 TraceCheckUtils]: 111: Hoare triple {12627#true} ~cond := #in~cond; {12971#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:08:02,052 INFO L290 TraceCheckUtils]: 112: Hoare triple {12971#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12975#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:02,052 INFO L290 TraceCheckUtils]: 113: Hoare triple {12975#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12975#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:02,053 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {12975#(not (= |__VERIFIER_assert_#in~cond| 0))} {12961#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 1))} #91#return; {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,053 INFO L272 TraceCheckUtils]: 115: Hoare triple {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,053 INFO L290 TraceCheckUtils]: 116: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,053 INFO L290 TraceCheckUtils]: 117: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,053 INFO L290 TraceCheckUtils]: 118: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,054 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {12627#true} {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} #93#return; {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,054 INFO L272 TraceCheckUtils]: 120: Hoare triple {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,054 INFO L290 TraceCheckUtils]: 121: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,054 INFO L290 TraceCheckUtils]: 122: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,054 INFO L290 TraceCheckUtils]: 123: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,054 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {12627#true} {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} #95#return; {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,054 INFO L272 TraceCheckUtils]: 125: Hoare triple {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {12627#true} is VALID [2022-04-27 13:08:02,054 INFO L290 TraceCheckUtils]: 126: Hoare triple {12627#true} ~cond := #in~cond; {12627#true} is VALID [2022-04-27 13:08:02,055 INFO L290 TraceCheckUtils]: 127: Hoare triple {12627#true} assume !(0 == ~cond); {12627#true} is VALID [2022-04-27 13:08:02,055 INFO L290 TraceCheckUtils]: 128: Hoare triple {12627#true} assume true; {12627#true} is VALID [2022-04-27 13:08:02,055 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {12627#true} {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} #97#return; {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,056 INFO L290 TraceCheckUtils]: 130: Hoare triple {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-27 13:08:02,057 INFO L290 TraceCheckUtils]: 131: Hoare triple {12982#(and (= main_~s~0 0) (= (+ (* (- 2) main_~x~0) main_~y~0) main_~c~0) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (= main_~q~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13034#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 2) 0) (= main_~s~0 1) (= (+ (* (- 2) main_~x~0) main_~y~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0))} is VALID [2022-04-27 13:08:02,058 INFO L290 TraceCheckUtils]: 132: Hoare triple {13034#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 2) 0) (= main_~s~0 1) (= (+ (* (- 2) main_~x~0) main_~y~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0))} assume !false; {13034#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 2) 0) (= main_~s~0 1) (= (+ (* (- 2) main_~x~0) main_~y~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0))} is VALID [2022-04-27 13:08:02,058 INFO L290 TraceCheckUtils]: 133: Hoare triple {13034#(and (= (+ (* (- 2) main_~x~0) main_~y~0) main_~b~0) (<= (+ main_~q~0 2) 0) (= main_~s~0 1) (= (+ (* (- 2) main_~x~0) main_~y~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0))} assume !(0 != ~b~0); {13041#(and (<= (+ main_~q~0 2) 0) (= main_~s~0 1) (= (+ (* (- 2) main_~x~0) main_~y~0) 0) (= (+ (* (- 2) main_~x~0) main_~y~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0))} is VALID [2022-04-27 13:08:02,059 INFO L272 TraceCheckUtils]: 134: Hoare triple {13041#(and (<= (+ main_~q~0 2) 0) (= main_~s~0 1) (= (+ (* (- 2) main_~x~0) main_~y~0) 0) (= (+ (* (- 2) main_~x~0) main_~y~0 (* main_~x~0 (* (- 1) main_~q~0))) main_~y~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {13045#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:08:02,059 INFO L290 TraceCheckUtils]: 135: Hoare triple {13045#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13049#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:08:02,059 INFO L290 TraceCheckUtils]: 136: Hoare triple {13049#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12628#false} is VALID [2022-04-27 13:08:02,059 INFO L290 TraceCheckUtils]: 137: Hoare triple {12628#false} assume !false; {12628#false} is VALID [2022-04-27 13:08:02,060 INFO L134 CoverageAnalysis]: Checked inductivity of 615 backedges. 67 proven. 53 refuted. 0 times theorem prover too weak. 495 trivial. 0 not checked. [2022-04-27 13:08:02,060 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:09:03,325 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 13:09:03,641 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:09:03,641 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1782913694] [2022-04-27 13:09:03,641 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:09:03,641 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [337169174] [2022-04-27 13:09:03,641 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [337169174] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:09:03,641 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:09:03,641 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15] total 15 [2022-04-27 13:09:03,641 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [177673975] [2022-04-27 13:09:03,641 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:09:03,642 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) Word has length 138 [2022-04-27 13:09:03,642 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:09:03,642 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-27 13:09:03,725 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:09:03,725 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 13:09:03,725 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:09:03,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 13:09:03,726 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=348, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:09:03,727 INFO L87 Difference]: Start difference. First operand 222 states and 298 transitions. Second operand has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-27 13:09:07,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:07,366 INFO L93 Difference]: Finished difference Result 278 states and 369 transitions. [2022-04-27 13:09:07,366 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 13:09:07,366 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) Word has length 138 [2022-04-27 13:09:07,366 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:09:07,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-27 13:09:07,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 139 transitions. [2022-04-27 13:09:07,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-27 13:09:07,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 139 transitions. [2022-04-27 13:09:07,371 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 139 transitions. [2022-04-27 13:09:07,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:09:07,539 INFO L225 Difference]: With dead ends: 278 [2022-04-27 13:09:07,539 INFO L226 Difference]: Without dead ends: 271 [2022-04-27 13:09:07,540 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 148 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 98 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=108, Invalid=542, Unknown=0, NotChecked=0, Total=650 [2022-04-27 13:09:07,540 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 33 mSDsluCounter, 263 mSDsCounter, 0 mSdLazyCounter, 808 mSolverCounterSat, 54 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 317 SdHoareTripleChecker+Invalid, 862 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 54 IncrementalHoareTripleChecker+Valid, 808 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.3s IncrementalHoareTripleChecker+Time [2022-04-27 13:09:07,540 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 317 Invalid, 862 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [54 Valid, 808 Invalid, 0 Unknown, 0 Unchecked, 1.3s Time] [2022-04-27 13:09:07,541 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 271 states. [2022-04-27 13:09:08,003 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 271 to 265. [2022-04-27 13:09:08,003 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:09:08,003 INFO L82 GeneralOperation]: Start isEquivalent. First operand 271 states. Second operand has 265 states, 144 states have (on average 1.1388888888888888) internal successors, (164), 146 states have internal predecessors, (164), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 94 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-27 13:09:08,004 INFO L74 IsIncluded]: Start isIncluded. First operand 271 states. Second operand has 265 states, 144 states have (on average 1.1388888888888888) internal successors, (164), 146 states have internal predecessors, (164), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 94 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-27 13:09:08,004 INFO L87 Difference]: Start difference. First operand 271 states. Second operand has 265 states, 144 states have (on average 1.1388888888888888) internal successors, (164), 146 states have internal predecessors, (164), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 94 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-27 13:09:08,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:08,012 INFO L93 Difference]: Finished difference Result 271 states and 362 transitions. [2022-04-27 13:09:08,012 INFO L276 IsEmpty]: Start isEmpty. Operand 271 states and 362 transitions. [2022-04-27 13:09:08,013 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:09:08,013 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:09:08,014 INFO L74 IsIncluded]: Start isIncluded. First operand has 265 states, 144 states have (on average 1.1388888888888888) internal successors, (164), 146 states have internal predecessors, (164), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 94 states have call predecessors, (95), 95 states have call successors, (95) Second operand 271 states. [2022-04-27 13:09:08,014 INFO L87 Difference]: Start difference. First operand has 265 states, 144 states have (on average 1.1388888888888888) internal successors, (164), 146 states have internal predecessors, (164), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 94 states have call predecessors, (95), 95 states have call successors, (95) Second operand 271 states. [2022-04-27 13:09:08,022 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:08,022 INFO L93 Difference]: Finished difference Result 271 states and 362 transitions. [2022-04-27 13:09:08,022 INFO L276 IsEmpty]: Start isEmpty. Operand 271 states and 362 transitions. [2022-04-27 13:09:08,023 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:09:08,023 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:09:08,023 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:09:08,023 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:09:08,024 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 265 states, 144 states have (on average 1.1388888888888888) internal successors, (164), 146 states have internal predecessors, (164), 97 states have call successors, (97), 24 states have call predecessors, (97), 23 states have return successors, (95), 94 states have call predecessors, (95), 95 states have call successors, (95) [2022-04-27 13:09:08,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 265 states to 265 states and 356 transitions. [2022-04-27 13:09:08,032 INFO L78 Accepts]: Start accepts. Automaton has 265 states and 356 transitions. Word has length 138 [2022-04-27 13:09:08,032 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:09:08,032 INFO L495 AbstractCegarLoop]: Abstraction has 265 states and 356 transitions. [2022-04-27 13:09:08,033 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 2.357142857142857) internal successors, (33), 14 states have internal predecessors, (33), 8 states have call successors, (25), 2 states have call predecessors, (25), 2 states have return successors, (23), 6 states have call predecessors, (23), 7 states have call successors, (23) [2022-04-27 13:09:08,033 INFO L276 IsEmpty]: Start isEmpty. Operand 265 states and 356 transitions. [2022-04-27 13:09:08,034 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 158 [2022-04-27 13:09:08,034 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:09:08,035 INFO L195 NwaCegarLoop]: trace histogram [21, 20, 20, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 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-27 13:09:08,061 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-27 13:09:08,247 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-27 13:09:08,247 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:09:08,248 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:09:08,248 INFO L85 PathProgramCache]: Analyzing trace with hash -1023835477, now seen corresponding path program 4 times [2022-04-27 13:09:08,248 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:09:08,248 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [190211324] [2022-04-27 13:09:08,248 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:09:08,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:09:08,273 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:09:08,273 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1737675786] [2022-04-27 13:09:08,274 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 13:09:08,274 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:09:08,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:09:08,275 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-27 13:09:08,276 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-27 13:09:08,364 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 13:09:08,364 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:09:08,366 INFO L263 TraceCheckSpWp]: Trace formula consists of 312 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-27 13:09:08,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:09:08,399 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:09:09,761 INFO L272 TraceCheckUtils]: 0: Hoare triple {14557#true} call ULTIMATE.init(); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 1: Hoare triple {14557#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); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14557#true} {14557#true} #103#return; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L272 TraceCheckUtils]: 4: Hoare triple {14557#true} call #t~ret6 := main(); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 5: Hoare triple {14557#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L272 TraceCheckUtils]: 6: Hoare triple {14557#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 7: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 8: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14557#true} {14557#true} #79#return; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 11: Hoare triple {14557#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L272 TraceCheckUtils]: 12: Hoare triple {14557#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 14: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,761 INFO L290 TraceCheckUtils]: 15: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14557#true} {14557#true} #81#return; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L272 TraceCheckUtils]: 17: Hoare triple {14557#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 18: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 19: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 20: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14557#true} {14557#true} #83#return; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L272 TraceCheckUtils]: 22: Hoare triple {14557#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 23: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 24: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 25: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14557#true} {14557#true} #85#return; {14557#true} is VALID [2022-04-27 13:09:09,762 INFO L290 TraceCheckUtils]: 27: Hoare triple {14557#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14643#(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-27 13:09:09,762 INFO L272 TraceCheckUtils]: 28: Hoare triple {14643#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L290 TraceCheckUtils]: 29: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L290 TraceCheckUtils]: 30: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L290 TraceCheckUtils]: 31: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14557#true} {14643#(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))} #87#return; {14643#(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-27 13:09:09,763 INFO L272 TraceCheckUtils]: 33: Hoare triple {14643#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L290 TraceCheckUtils]: 34: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,763 INFO L290 TraceCheckUtils]: 36: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,764 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14557#true} {14643#(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))} #89#return; {14643#(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-27 13:09:09,764 INFO L290 TraceCheckUtils]: 38: Hoare triple {14643#(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; {14643#(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-27 13:09:09,765 INFO L290 TraceCheckUtils]: 39: Hoare triple {14643#(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);~c~0 := ~a~0;~k~0 := 0; {14680#(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-27 13:09:09,765 INFO L290 TraceCheckUtils]: 40: Hoare triple {14680#(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; {14680#(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-27 13:09:09,765 INFO L272 TraceCheckUtils]: 41: Hoare triple {14680#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,765 INFO L290 TraceCheckUtils]: 42: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,765 INFO L290 TraceCheckUtils]: 43: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,765 INFO L290 TraceCheckUtils]: 44: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,767 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14557#true} {14680#(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))} #91#return; {14680#(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-27 13:09:09,768 INFO L272 TraceCheckUtils]: 46: Hoare triple {14680#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,768 INFO L290 TraceCheckUtils]: 47: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,768 INFO L290 TraceCheckUtils]: 48: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,768 INFO L290 TraceCheckUtils]: 49: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,768 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14557#true} {14680#(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))} #93#return; {14680#(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-27 13:09:09,768 INFO L272 TraceCheckUtils]: 51: Hoare triple {14680#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,768 INFO L290 TraceCheckUtils]: 52: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,768 INFO L290 TraceCheckUtils]: 53: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,769 INFO L290 TraceCheckUtils]: 54: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,769 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14557#true} {14680#(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))} #95#return; {14680#(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-27 13:09:09,769 INFO L272 TraceCheckUtils]: 56: Hoare triple {14680#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,769 INFO L290 TraceCheckUtils]: 57: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,769 INFO L290 TraceCheckUtils]: 58: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,769 INFO L290 TraceCheckUtils]: 59: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,770 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14557#true} {14680#(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))} #97#return; {14680#(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-27 13:09:09,771 INFO L290 TraceCheckUtils]: 61: Hoare triple {14680#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,771 INFO L290 TraceCheckUtils]: 62: Hoare triple {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,772 INFO L272 TraceCheckUtils]: 63: Hoare triple {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= 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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,772 INFO L290 TraceCheckUtils]: 64: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,772 INFO L290 TraceCheckUtils]: 65: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,772 INFO L290 TraceCheckUtils]: 66: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,772 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {14557#true} {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,772 INFO L272 TraceCheckUtils]: 68: Hoare triple {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= 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)); {14557#true} is VALID [2022-04-27 13:09:09,772 INFO L290 TraceCheckUtils]: 69: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,772 INFO L290 TraceCheckUtils]: 70: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,773 INFO L290 TraceCheckUtils]: 71: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,773 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14557#true} {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,773 INFO L272 TraceCheckUtils]: 73: Hoare triple {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,773 INFO L290 TraceCheckUtils]: 74: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,773 INFO L290 TraceCheckUtils]: 75: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,773 INFO L290 TraceCheckUtils]: 76: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,774 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14557#true} {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,774 INFO L272 TraceCheckUtils]: 78: Hoare triple {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,774 INFO L290 TraceCheckUtils]: 79: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,774 INFO L290 TraceCheckUtils]: 80: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,774 INFO L290 TraceCheckUtils]: 81: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,775 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {14557#true} {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,776 INFO L290 TraceCheckUtils]: 83: Hoare triple {14747#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= 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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,776 INFO L290 TraceCheckUtils]: 84: Hoare triple {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,776 INFO L272 TraceCheckUtils]: 85: Hoare triple {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,776 INFO L290 TraceCheckUtils]: 86: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,776 INFO L290 TraceCheckUtils]: 87: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,776 INFO L290 TraceCheckUtils]: 88: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,777 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {14557#true} {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,777 INFO L272 TraceCheckUtils]: 90: Hoare triple {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~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)); {14557#true} is VALID [2022-04-27 13:09:09,777 INFO L290 TraceCheckUtils]: 91: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,777 INFO L290 TraceCheckUtils]: 92: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,777 INFO L290 TraceCheckUtils]: 93: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,778 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {14557#true} {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,778 INFO L272 TraceCheckUtils]: 95: Hoare triple {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,778 INFO L290 TraceCheckUtils]: 96: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,778 INFO L290 TraceCheckUtils]: 97: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,778 INFO L290 TraceCheckUtils]: 98: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,779 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {14557#true} {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,779 INFO L272 TraceCheckUtils]: 100: Hoare triple {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,779 INFO L290 TraceCheckUtils]: 101: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,779 INFO L290 TraceCheckUtils]: 102: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,779 INFO L290 TraceCheckUtils]: 103: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,780 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {14557#true} {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,781 INFO L290 TraceCheckUtils]: 105: Hoare triple {14814#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 main_~b~0)) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,781 INFO L290 TraceCheckUtils]: 106: Hoare triple {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,781 INFO L272 TraceCheckUtils]: 107: Hoare triple {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= 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 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,781 INFO L290 TraceCheckUtils]: 108: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,781 INFO L290 TraceCheckUtils]: 109: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,781 INFO L290 TraceCheckUtils]: 110: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,782 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {14557#true} {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,782 INFO L272 TraceCheckUtils]: 112: Hoare triple {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= 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)); {14557#true} is VALID [2022-04-27 13:09:09,782 INFO L290 TraceCheckUtils]: 113: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,782 INFO L290 TraceCheckUtils]: 114: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,782 INFO L290 TraceCheckUtils]: 115: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,783 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {14557#true} {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #93#return; {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,783 INFO L272 TraceCheckUtils]: 117: Hoare triple {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,783 INFO L290 TraceCheckUtils]: 118: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,783 INFO L290 TraceCheckUtils]: 119: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,783 INFO L290 TraceCheckUtils]: 120: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,785 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {14557#true} {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #95#return; {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,785 INFO L272 TraceCheckUtils]: 122: Hoare triple {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,785 INFO L290 TraceCheckUtils]: 123: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,785 INFO L290 TraceCheckUtils]: 124: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,785 INFO L290 TraceCheckUtils]: 125: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,786 INFO L284 TraceCheckUtils]: 126: Hoare quadruple {14557#true} {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #97#return; {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,786 INFO L290 TraceCheckUtils]: 127: Hoare triple {14881#(and (= main_~r~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ main_~c~0 (* main_~b~0 2))) (= main_~s~0 1) (= main_~k~0 3) (= 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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14948#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ main_~a~0 (* (- 1) main_~b~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ (- 1) main_~k~0) 3) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,787 INFO L290 TraceCheckUtils]: 128: Hoare triple {14948#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ main_~a~0 (* (- 1) main_~b~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ (- 1) main_~k~0) 3) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {14948#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ main_~a~0 (* (- 1) main_~b~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ (- 1) main_~k~0) 3) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,787 INFO L272 TraceCheckUtils]: 129: Hoare triple {14948#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ main_~a~0 (* (- 1) main_~b~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ (- 1) main_~k~0) 3) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,787 INFO L290 TraceCheckUtils]: 130: Hoare triple {14557#true} ~cond := #in~cond; {14958#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:09:09,787 INFO L290 TraceCheckUtils]: 131: Hoare triple {14958#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:09:09,788 INFO L290 TraceCheckUtils]: 132: Hoare triple {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:09:09,788 INFO L284 TraceCheckUtils]: 133: Hoare quadruple {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} {14948#(and (= main_~r~0 0) (= (+ main_~c~0 (* main_~b~0 3)) (+ main_~a~0 (* (- 1) main_~b~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ (- 1) main_~k~0) 3) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #91#return; {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,789 INFO L272 TraceCheckUtils]: 134: Hoare triple {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,789 INFO L290 TraceCheckUtils]: 135: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,789 INFO L290 TraceCheckUtils]: 136: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,789 INFO L290 TraceCheckUtils]: 137: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,792 INFO L284 TraceCheckUtils]: 138: Hoare quadruple {14557#true} {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} #93#return; {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,792 INFO L272 TraceCheckUtils]: 139: Hoare triple {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,792 INFO L290 TraceCheckUtils]: 140: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,792 INFO L290 TraceCheckUtils]: 141: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,792 INFO L290 TraceCheckUtils]: 142: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,793 INFO L284 TraceCheckUtils]: 143: Hoare quadruple {14557#true} {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} #95#return; {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,793 INFO L272 TraceCheckUtils]: 144: Hoare triple {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:09:09,793 INFO L290 TraceCheckUtils]: 145: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:09:09,793 INFO L290 TraceCheckUtils]: 146: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:09:09,793 INFO L290 TraceCheckUtils]: 147: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:09:09,794 INFO L284 TraceCheckUtils]: 148: Hoare quadruple {14557#true} {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} #97#return; {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,795 INFO L290 TraceCheckUtils]: 149: Hoare triple {14969#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {15018#(and (= main_~r~0 0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= main_~p~0 1))} is VALID [2022-04-27 13:09:09,796 INFO L290 TraceCheckUtils]: 150: Hoare triple {15018#(and (= main_~r~0 0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~q~0 0) (= main_~k~0 4) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~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; {15022#(and (not (<= (* 5 main_~y~0) main_~x~0)) (<= (* main_~y~0 4) main_~x~0) (= (+ main_~s~0 4) 0) (= main_~b~0 (+ (* main_~y~0 (- 4)) main_~x~0)) (= main_~q~0 1))} is VALID [2022-04-27 13:09:09,797 INFO L290 TraceCheckUtils]: 151: Hoare triple {15022#(and (not (<= (* 5 main_~y~0) main_~x~0)) (<= (* main_~y~0 4) main_~x~0) (= (+ main_~s~0 4) 0) (= main_~b~0 (+ (* main_~y~0 (- 4)) main_~x~0)) (= main_~q~0 1))} assume !false; {15022#(and (not (<= (* 5 main_~y~0) main_~x~0)) (<= (* main_~y~0 4) main_~x~0) (= (+ main_~s~0 4) 0) (= main_~b~0 (+ (* main_~y~0 (- 4)) main_~x~0)) (= main_~q~0 1))} is VALID [2022-04-27 13:09:09,797 INFO L290 TraceCheckUtils]: 152: Hoare triple {15022#(and (not (<= (* 5 main_~y~0) main_~x~0)) (<= (* main_~y~0 4) main_~x~0) (= (+ main_~s~0 4) 0) (= main_~b~0 (+ (* main_~y~0 (- 4)) main_~x~0)) (= main_~q~0 1))} assume !(0 != ~b~0); {15029#(and (< main_~x~0 (* 5 main_~y~0)) (= (+ main_~s~0 4) 0) (= main_~x~0 (* main_~y~0 4)) (= main_~q~0 1))} is VALID [2022-04-27 13:09:09,798 INFO L272 TraceCheckUtils]: 153: Hoare triple {15029#(and (< main_~x~0 (* 5 main_~y~0)) (= (+ main_~s~0 4) 0) (= main_~x~0 (* main_~y~0 4)) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {15033#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:09:09,799 INFO L290 TraceCheckUtils]: 154: Hoare triple {15033#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15037#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:09:09,799 INFO L290 TraceCheckUtils]: 155: Hoare triple {15037#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14558#false} is VALID [2022-04-27 13:09:09,799 INFO L290 TraceCheckUtils]: 156: Hoare triple {14558#false} assume !false; {14558#false} is VALID [2022-04-27 13:09:09,800 INFO L134 CoverageAnalysis]: Checked inductivity of 922 backedges. 87 proven. 72 refuted. 0 times theorem prover too weak. 763 trivial. 0 not checked. [2022-04-27 13:09:09,800 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:10:10,026 INFO L290 TraceCheckUtils]: 156: Hoare triple {14558#false} assume !false; {14558#false} is VALID [2022-04-27 13:10:10,027 INFO L290 TraceCheckUtils]: 155: Hoare triple {15037#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14558#false} is VALID [2022-04-27 13:10:10,027 INFO L290 TraceCheckUtils]: 154: Hoare triple {15033#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15037#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:10,028 INFO L272 TraceCheckUtils]: 153: Hoare triple {15053#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {15033#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:10:10,028 INFO L290 TraceCheckUtils]: 152: Hoare triple {15057#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {15053#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-27 13:10:10,028 INFO L290 TraceCheckUtils]: 151: Hoare triple {15057#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {15057#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 13:10:10,425 INFO L290 TraceCheckUtils]: 150: Hoare triple {15064#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15057#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 13:10:10,426 INFO L290 TraceCheckUtils]: 149: Hoare triple {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {15064#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:10:10,427 INFO L284 TraceCheckUtils]: 148: Hoare quadruple {14557#true} {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #97#return; {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:10:10,427 INFO L290 TraceCheckUtils]: 147: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,427 INFO L290 TraceCheckUtils]: 146: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,427 INFO L290 TraceCheckUtils]: 145: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,427 INFO L272 TraceCheckUtils]: 144: Hoare triple {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,427 INFO L284 TraceCheckUtils]: 143: Hoare quadruple {14557#true} {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #95#return; {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:10:10,428 INFO L290 TraceCheckUtils]: 142: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,428 INFO L290 TraceCheckUtils]: 141: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,428 INFO L290 TraceCheckUtils]: 140: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,428 INFO L272 TraceCheckUtils]: 139: Hoare triple {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,428 INFO L284 TraceCheckUtils]: 138: Hoare quadruple {14557#true} {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #93#return; {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:10:10,428 INFO L290 TraceCheckUtils]: 137: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,428 INFO L290 TraceCheckUtils]: 136: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,429 INFO L290 TraceCheckUtils]: 135: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,429 INFO L272 TraceCheckUtils]: 134: Hoare triple {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,429 INFO L284 TraceCheckUtils]: 133: Hoare quadruple {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} {15117#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #91#return; {15068#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:10:10,430 INFO L290 TraceCheckUtils]: 132: Hoare triple {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:10,430 INFO L290 TraceCheckUtils]: 131: Hoare triple {15127#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14962#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:10,430 INFO L290 TraceCheckUtils]: 130: Hoare triple {14557#true} ~cond := #in~cond; {15127#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:10:10,430 INFO L272 TraceCheckUtils]: 129: Hoare triple {15117#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0) (not (= 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)); {14557#true} is VALID [2022-04-27 13:10:10,431 INFO L290 TraceCheckUtils]: 128: Hoare triple {15117#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !false; {15117#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:10:10,597 INFO L290 TraceCheckUtils]: 127: Hoare triple {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15117#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-27 13:10:10,598 INFO L284 TraceCheckUtils]: 126: Hoare quadruple {14557#true} {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} #97#return; {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:10:10,598 INFO L290 TraceCheckUtils]: 125: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,598 INFO L290 TraceCheckUtils]: 124: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,598 INFO L290 TraceCheckUtils]: 123: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,598 INFO L272 TraceCheckUtils]: 122: Hoare triple {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,599 INFO L284 TraceCheckUtils]: 121: Hoare quadruple {14557#true} {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} #95#return; {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:10:10,599 INFO L290 TraceCheckUtils]: 120: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,599 INFO L290 TraceCheckUtils]: 119: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,599 INFO L290 TraceCheckUtils]: 118: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,599 INFO L272 TraceCheckUtils]: 117: Hoare triple {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,600 INFO L284 TraceCheckUtils]: 116: Hoare quadruple {14557#true} {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} #93#return; {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:10:10,600 INFO L290 TraceCheckUtils]: 115: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,600 INFO L290 TraceCheckUtils]: 114: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,600 INFO L290 TraceCheckUtils]: 113: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,600 INFO L272 TraceCheckUtils]: 112: Hoare triple {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,601 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {14557#true} {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} #91#return; {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:10:10,601 INFO L290 TraceCheckUtils]: 110: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:10,601 INFO L290 TraceCheckUtils]: 109: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:10,601 INFO L290 TraceCheckUtils]: 108: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:10,601 INFO L272 TraceCheckUtils]: 107: Hoare triple {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:10,602 INFO L290 TraceCheckUtils]: 106: Hoare triple {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} assume !false; {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:10:11,473 INFO L290 TraceCheckUtils]: 105: Hoare triple {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15137#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:10:11,474 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {14557#true} {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,474 INFO L290 TraceCheckUtils]: 103: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,474 INFO L290 TraceCheckUtils]: 102: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,474 INFO L290 TraceCheckUtils]: 101: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,474 INFO L272 TraceCheckUtils]: 100: Hoare triple {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:11,475 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {14557#true} {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,475 INFO L290 TraceCheckUtils]: 98: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,475 INFO L290 TraceCheckUtils]: 97: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,475 INFO L290 TraceCheckUtils]: 96: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,475 INFO L272 TraceCheckUtils]: 95: Hoare triple {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {14557#true} is VALID [2022-04-27 13:10:11,480 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {14557#true} {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,481 INFO L290 TraceCheckUtils]: 93: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,481 INFO L290 TraceCheckUtils]: 92: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,481 INFO L290 TraceCheckUtils]: 91: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,481 INFO L272 TraceCheckUtils]: 90: Hoare triple {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {14557#true} is VALID [2022-04-27 13:10:11,481 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {14557#true} {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,481 INFO L290 TraceCheckUtils]: 88: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,481 INFO L290 TraceCheckUtils]: 87: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,482 INFO L290 TraceCheckUtils]: 86: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,482 INFO L272 TraceCheckUtils]: 85: Hoare triple {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {14557#true} is VALID [2022-04-27 13:10:11,482 INFO L290 TraceCheckUtils]: 84: Hoare triple {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,584 INFO L290 TraceCheckUtils]: 83: Hoare triple {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15204#(or (not (= main_~a~0 (+ main_~c~0 (* (- 1) main_~b~0) (* (+ main_~k~0 1) main_~b~0)))) (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (* main_~b~0 3) main_~c~0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,585 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {14557#true} {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,585 INFO L290 TraceCheckUtils]: 81: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,585 INFO L290 TraceCheckUtils]: 80: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,585 INFO L290 TraceCheckUtils]: 79: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,585 INFO L272 TraceCheckUtils]: 78: Hoare triple {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:11,586 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14557#true} {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,586 INFO L290 TraceCheckUtils]: 76: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,586 INFO L290 TraceCheckUtils]: 75: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,586 INFO L290 TraceCheckUtils]: 74: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,586 INFO L272 TraceCheckUtils]: 73: Hoare triple {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {14557#true} is VALID [2022-04-27 13:10:11,587 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14557#true} {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,587 INFO L290 TraceCheckUtils]: 71: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,587 INFO L290 TraceCheckUtils]: 70: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,587 INFO L290 TraceCheckUtils]: 69: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,587 INFO L272 TraceCheckUtils]: 68: Hoare triple {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {14557#true} is VALID [2022-04-27 13:10:11,588 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {14557#true} {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:11,588 INFO L290 TraceCheckUtils]: 66: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:11,588 INFO L290 TraceCheckUtils]: 65: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:11,588 INFO L290 TraceCheckUtils]: 64: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:11,588 INFO L272 TraceCheckUtils]: 63: Hoare triple {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {14557#true} is VALID [2022-04-27 13:10:11,588 INFO L290 TraceCheckUtils]: 62: Hoare triple {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:12,204 INFO L290 TraceCheckUtils]: 61: Hoare triple {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15271#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (+ main_~a~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0)))) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) main_~b~0 main_~k~0)) main_~b~0)) (<= (+ (* main_~b~0 main_~k~0) (* main_~b~0 4)) main_~a~0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:10:12,206 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {14557#true} {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} #97#return; {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} is VALID [2022-04-27 13:10:12,206 INFO L290 TraceCheckUtils]: 59: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,206 INFO L290 TraceCheckUtils]: 58: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,206 INFO L290 TraceCheckUtils]: 57: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,206 INFO L272 TraceCheckUtils]: 56: Hoare triple {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,206 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {14557#true} {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} #95#return; {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} is VALID [2022-04-27 13:10:12,207 INFO L290 TraceCheckUtils]: 54: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,207 INFO L290 TraceCheckUtils]: 53: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,207 INFO L290 TraceCheckUtils]: 52: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,207 INFO L272 TraceCheckUtils]: 51: Hoare triple {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,207 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {14557#true} {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} #93#return; {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} is VALID [2022-04-27 13:10:12,207 INFO L290 TraceCheckUtils]: 49: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,208 INFO L290 TraceCheckUtils]: 48: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,208 INFO L290 TraceCheckUtils]: 47: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,208 INFO L272 TraceCheckUtils]: 46: Hoare triple {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,208 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {14557#true} {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} #91#return; {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} is VALID [2022-04-27 13:10:12,208 INFO L290 TraceCheckUtils]: 44: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,208 INFO L290 TraceCheckUtils]: 43: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,208 INFO L290 TraceCheckUtils]: 42: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,209 INFO L272 TraceCheckUtils]: 41: Hoare triple {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,209 INFO L290 TraceCheckUtils]: 40: Hoare triple {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} assume !false; {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} is VALID [2022-04-27 13:10:12,210 INFO L290 TraceCheckUtils]: 39: Hoare triple {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {15338#(or (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 (+ main_~k~0 3)) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 (+ main_~k~0 3))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) (+ main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~k~0 1) main_~b~0)))) (<= (+ (* main_~b~0 main_~k~0) (* 5 main_~b~0)) main_~a~0) (not (= (+ (* (- 2) main_~b~0) main_~a~0 (* (- 1) (+ main_~k~0 1) main_~b~0)) main_~b~0)))} is VALID [2022-04-27 13:10:12,210 INFO L290 TraceCheckUtils]: 38: Hoare triple {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} assume !false; {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} is VALID [2022-04-27 13:10:12,211 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {14557#true} {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} #89#return; {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} is VALID [2022-04-27 13:10:12,211 INFO L290 TraceCheckUtils]: 36: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,211 INFO L290 TraceCheckUtils]: 35: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,211 INFO L290 TraceCheckUtils]: 34: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,211 INFO L272 TraceCheckUtils]: 33: Hoare triple {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,212 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {14557#true} {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} #87#return; {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} is VALID [2022-04-27 13:10:12,212 INFO L290 TraceCheckUtils]: 31: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,212 INFO L290 TraceCheckUtils]: 30: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,212 INFO L290 TraceCheckUtils]: 29: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,212 INFO L272 TraceCheckUtils]: 28: Hoare triple {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 27: Hoare triple {14557#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {15405#(or (not (= main_~b~0 (+ (* main_~b~0 (- 3)) main_~a~0))) (<= (* 5 main_~b~0) main_~a~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 3) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 3))))} is VALID [2022-04-27 13:10:12,213 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14557#true} {14557#true} #85#return; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 25: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 24: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 23: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L272 TraceCheckUtils]: 22: Hoare triple {14557#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14557#true} {14557#true} #83#return; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L272 TraceCheckUtils]: 17: Hoare triple {14557#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {14557#true} {14557#true} #81#return; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 15: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 14: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 13: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L272 TraceCheckUtils]: 12: Hoare triple {14557#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 11: Hoare triple {14557#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14557#true} {14557#true} #79#return; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 9: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,213 INFO L290 TraceCheckUtils]: 8: Hoare triple {14557#true} assume !(0 == ~cond); {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {14557#true} ~cond := #in~cond; {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {14557#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {14557#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L272 TraceCheckUtils]: 4: Hoare triple {14557#true} call #t~ret6 := main(); {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14557#true} {14557#true} #103#return; {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L290 TraceCheckUtils]: 2: Hoare triple {14557#true} assume true; {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {14557#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); {14557#true} is VALID [2022-04-27 13:10:12,214 INFO L272 TraceCheckUtils]: 0: Hoare triple {14557#true} call ULTIMATE.init(); {14557#true} is VALID [2022-04-27 13:10:12,215 INFO L134 CoverageAnalysis]: Checked inductivity of 922 backedges. 87 proven. 72 refuted. 0 times theorem prover too weak. 763 trivial. 0 not checked. [2022-04-27 13:10:12,215 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:10:12,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [190211324] [2022-04-27 13:10:12,215 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:10:12,215 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1737675786] [2022-04-27 13:10:12,215 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1737675786] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:10:12,215 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:10:12,215 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 27 [2022-04-27 13:10:12,215 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1828715960] [2022-04-27 13:10:12,215 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:10:12,216 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) Word has length 157 [2022-04-27 13:10:12,216 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:10:12,217 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) [2022-04-27 13:10:13,285 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:13,285 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-27 13:10:13,285 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:10:13,286 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-27 13:10:13,286 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=131, Invalid=571, Unknown=0, NotChecked=0, Total=702 [2022-04-27 13:10:13,286 INFO L87 Difference]: Start difference. First operand 265 states and 356 transitions. Second operand has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) [2022-04-27 13:11:21,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:11:21,575 INFO L93 Difference]: Finished difference Result 397 states and 561 transitions. [2022-04-27 13:11:21,575 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2022-04-27 13:11:21,575 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) Word has length 157 [2022-04-27 13:11:21,575 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:11:21,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) [2022-04-27 13:11:21,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 225 transitions. [2022-04-27 13:11:21,595 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) [2022-04-27 13:11:21,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 225 transitions. [2022-04-27 13:11:21,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 225 transitions. [2022-04-27 13:11:23,909 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 225 edges. 225 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:11:23,922 INFO L225 Difference]: With dead ends: 397 [2022-04-27 13:11:23,922 INFO L226 Difference]: Without dead ends: 389 [2022-04-27 13:11:23,923 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 339 GetRequests, 287 SyntacticMatches, 1 SemanticMatches, 51 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 665 ImplicationChecksByTransitivity, 25.8s TimeCoverageRelationStatistics Valid=595, Invalid=2161, Unknown=0, NotChecked=0, Total=2756 [2022-04-27 13:11:23,924 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 104 mSDsluCounter, 357 mSDsCounter, 0 mSdLazyCounter, 1518 mSolverCounterSat, 290 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 20.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 113 SdHoareTripleChecker+Valid, 423 SdHoareTripleChecker+Invalid, 1808 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 290 IncrementalHoareTripleChecker+Valid, 1518 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 20.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:11:23,924 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [113 Valid, 423 Invalid, 1808 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [290 Valid, 1518 Invalid, 0 Unknown, 0 Unchecked, 20.6s Time] [2022-04-27 13:11:23,925 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 389 states. [2022-04-27 13:11:24,699 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 389 to 355. [2022-04-27 13:11:24,699 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:11:24,700 INFO L82 GeneralOperation]: Start isEquivalent. First operand 389 states. Second operand has 355 states, 183 states have (on average 1.1639344262295082) internal successors, (213), 185 states have internal predecessors, (213), 145 states have call successors, (145), 27 states have call predecessors, (145), 26 states have return successors, (143), 142 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-27 13:11:24,700 INFO L74 IsIncluded]: Start isIncluded. First operand 389 states. Second operand has 355 states, 183 states have (on average 1.1639344262295082) internal successors, (213), 185 states have internal predecessors, (213), 145 states have call successors, (145), 27 states have call predecessors, (145), 26 states have return successors, (143), 142 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-27 13:11:24,701 INFO L87 Difference]: Start difference. First operand 389 states. Second operand has 355 states, 183 states have (on average 1.1639344262295082) internal successors, (213), 185 states have internal predecessors, (213), 145 states have call successors, (145), 27 states have call predecessors, (145), 26 states have return successors, (143), 142 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-27 13:11:24,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:11:24,715 INFO L93 Difference]: Finished difference Result 389 states and 551 transitions. [2022-04-27 13:11:24,715 INFO L276 IsEmpty]: Start isEmpty. Operand 389 states and 551 transitions. [2022-04-27 13:11:24,717 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:11:24,717 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:11:24,718 INFO L74 IsIncluded]: Start isIncluded. First operand has 355 states, 183 states have (on average 1.1639344262295082) internal successors, (213), 185 states have internal predecessors, (213), 145 states have call successors, (145), 27 states have call predecessors, (145), 26 states have return successors, (143), 142 states have call predecessors, (143), 143 states have call successors, (143) Second operand 389 states. [2022-04-27 13:11:24,718 INFO L87 Difference]: Start difference. First operand has 355 states, 183 states have (on average 1.1639344262295082) internal successors, (213), 185 states have internal predecessors, (213), 145 states have call successors, (145), 27 states have call predecessors, (145), 26 states have return successors, (143), 142 states have call predecessors, (143), 143 states have call successors, (143) Second operand 389 states. [2022-04-27 13:11:24,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:11:24,733 INFO L93 Difference]: Finished difference Result 389 states and 551 transitions. [2022-04-27 13:11:24,734 INFO L276 IsEmpty]: Start isEmpty. Operand 389 states and 551 transitions. [2022-04-27 13:11:24,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:11:24,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:11:24,735 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:11:24,735 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:11:24,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 355 states, 183 states have (on average 1.1639344262295082) internal successors, (213), 185 states have internal predecessors, (213), 145 states have call successors, (145), 27 states have call predecessors, (145), 26 states have return successors, (143), 142 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-27 13:11:24,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 355 states to 355 states and 501 transitions. [2022-04-27 13:11:24,750 INFO L78 Accepts]: Start accepts. Automaton has 355 states and 501 transitions. Word has length 157 [2022-04-27 13:11:24,750 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:11:24,750 INFO L495 AbstractCegarLoop]: Abstraction has 355 states and 501 transitions. [2022-04-27 13:11:24,750 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 25 states have (on average 2.0) internal successors, (50), 24 states have internal predecessors, (50), 17 states have call successors, (52), 2 states have call predecessors, (52), 2 states have return successors, (49), 13 states have call predecessors, (49), 15 states have call successors, (49) [2022-04-27 13:11:24,751 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 501 transitions. [2022-04-27 13:11:24,753 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 161 [2022-04-27 13:11:24,753 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:11:24,753 INFO L195 NwaCegarLoop]: trace histogram [21, 20, 20, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 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] [2022-04-27 13:11:24,783 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-27 13:11:24,975 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-27 13:11:24,975 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:11:24,976 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:11:24,976 INFO L85 PathProgramCache]: Analyzing trace with hash 1001336492, now seen corresponding path program 5 times [2022-04-27 13:11:24,976 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:11:24,976 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [259256663] [2022-04-27 13:11:24,976 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:11:24,976 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:11:24,996 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:11:24,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1206898756] [2022-04-27 13:11:24,996 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 13:11:24,996 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:11:24,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:11:24,997 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-27 13:11:24,999 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-27 13:11:25,119 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 11 check-sat command(s) [2022-04-27 13:11:25,120 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:11:25,121 INFO L263 TraceCheckSpWp]: Trace formula consists of 375 conjuncts, 61 conjunts are in the unsatisfiable core [2022-04-27 13:11:25,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:11:25,153 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:11:26,459 INFO L272 TraceCheckUtils]: 0: Hoare triple {17566#true} call ULTIMATE.init(); {17566#true} is VALID [2022-04-27 13:11:26,459 INFO L290 TraceCheckUtils]: 1: Hoare triple {17566#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); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17566#true} {17566#true} #103#return; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {17566#true} call #t~ret6 := main(); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 5: Hoare triple {17566#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L272 TraceCheckUtils]: 6: Hoare triple {17566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 7: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 8: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 9: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17566#true} {17566#true} #79#return; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 11: Hoare triple {17566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L272 TraceCheckUtils]: 12: Hoare triple {17566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 13: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 14: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 15: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17566#true} {17566#true} #81#return; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L272 TraceCheckUtils]: 17: Hoare triple {17566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 18: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L290 TraceCheckUtils]: 20: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,460 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17566#true} {17566#true} #83#return; {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L272 TraceCheckUtils]: 22: Hoare triple {17566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 23: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 25: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17566#true} {17566#true} #85#return; {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 27: Hoare triple {17566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {17652#(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-27 13:11:26,461 INFO L272 TraceCheckUtils]: 28: Hoare triple {17652#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 29: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 30: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,461 INFO L290 TraceCheckUtils]: 31: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,462 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {17566#true} {17652#(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))} #87#return; {17652#(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-27 13:11:26,462 INFO L272 TraceCheckUtils]: 33: Hoare triple {17652#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,462 INFO L290 TraceCheckUtils]: 34: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,462 INFO L290 TraceCheckUtils]: 35: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,462 INFO L290 TraceCheckUtils]: 36: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,463 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17566#true} {17652#(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))} #89#return; {17652#(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-27 13:11:26,463 INFO L290 TraceCheckUtils]: 38: Hoare triple {17652#(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; {17652#(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-27 13:11:26,464 INFO L290 TraceCheckUtils]: 39: Hoare triple {17652#(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);~c~0 := ~a~0;~k~0 := 0; {17689#(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-27 13:11:26,464 INFO L290 TraceCheckUtils]: 40: Hoare triple {17689#(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; {17689#(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-27 13:11:26,464 INFO L272 TraceCheckUtils]: 41: Hoare triple {17689#(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)); {17566#true} is VALID [2022-04-27 13:11:26,464 INFO L290 TraceCheckUtils]: 42: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,464 INFO L290 TraceCheckUtils]: 43: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,464 INFO L290 TraceCheckUtils]: 44: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,465 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {17566#true} {17689#(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))} #91#return; {17689#(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-27 13:11:26,465 INFO L272 TraceCheckUtils]: 46: Hoare triple {17689#(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)); {17566#true} is VALID [2022-04-27 13:11:26,465 INFO L290 TraceCheckUtils]: 47: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,465 INFO L290 TraceCheckUtils]: 48: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,465 INFO L290 TraceCheckUtils]: 49: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,466 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {17566#true} {17689#(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))} #93#return; {17689#(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-27 13:11:26,466 INFO L272 TraceCheckUtils]: 51: Hoare triple {17689#(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)); {17566#true} is VALID [2022-04-27 13:11:26,466 INFO L290 TraceCheckUtils]: 52: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,466 INFO L290 TraceCheckUtils]: 53: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,466 INFO L290 TraceCheckUtils]: 54: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,467 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {17566#true} {17689#(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; {17689#(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-27 13:11:26,467 INFO L272 TraceCheckUtils]: 56: Hoare triple {17689#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,467 INFO L290 TraceCheckUtils]: 57: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,467 INFO L290 TraceCheckUtils]: 58: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,467 INFO L290 TraceCheckUtils]: 59: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,467 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {17566#true} {17689#(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; {17689#(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-27 13:11:26,468 INFO L290 TraceCheckUtils]: 61: Hoare triple {17689#(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); {17689#(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-27 13:11:26,468 INFO L290 TraceCheckUtils]: 62: Hoare triple {17689#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17759#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,469 INFO L290 TraceCheckUtils]: 63: Hoare triple {17759#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {17759#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,469 INFO L290 TraceCheckUtils]: 64: Hoare triple {17759#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {17766#(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) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,469 INFO L290 TraceCheckUtils]: 65: Hoare triple {17766#(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) (= main_~q~0 1))} assume !false; {17766#(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) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,469 INFO L272 TraceCheckUtils]: 66: Hoare triple {17766#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,469 INFO L290 TraceCheckUtils]: 67: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,470 INFO L290 TraceCheckUtils]: 68: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,470 INFO L290 TraceCheckUtils]: 69: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,470 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {17566#true} {17766#(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) (= main_~q~0 1))} #91#return; {17766#(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) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,470 INFO L272 TraceCheckUtils]: 71: Hoare triple {17766#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,470 INFO L290 TraceCheckUtils]: 72: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,470 INFO L290 TraceCheckUtils]: 73: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,470 INFO L290 TraceCheckUtils]: 74: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,471 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {17566#true} {17766#(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) (= main_~q~0 1))} #93#return; {17766#(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) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,471 INFO L272 TraceCheckUtils]: 76: Hoare triple {17766#(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) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,471 INFO L290 TraceCheckUtils]: 77: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,471 INFO L290 TraceCheckUtils]: 78: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,471 INFO L290 TraceCheckUtils]: 79: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,472 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {17566#true} {17766#(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) (= main_~q~0 1))} #95#return; {17766#(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) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,472 INFO L272 TraceCheckUtils]: 81: Hoare triple {17766#(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) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,472 INFO L290 TraceCheckUtils]: 82: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,472 INFO L290 TraceCheckUtils]: 83: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,472 INFO L290 TraceCheckUtils]: 84: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,473 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {17566#true} {17766#(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) (= main_~q~0 1))} #97#return; {17766#(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) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,473 INFO L290 TraceCheckUtils]: 86: Hoare triple {17766#(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) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,474 INFO L290 TraceCheckUtils]: 87: Hoare triple {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} assume !false; {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,474 INFO L272 TraceCheckUtils]: 88: Hoare triple {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,474 INFO L290 TraceCheckUtils]: 89: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,474 INFO L290 TraceCheckUtils]: 90: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,474 INFO L290 TraceCheckUtils]: 91: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,475 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {17566#true} {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #91#return; {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,475 INFO L272 TraceCheckUtils]: 93: Hoare triple {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,475 INFO L290 TraceCheckUtils]: 94: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,475 INFO L290 TraceCheckUtils]: 95: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,475 INFO L290 TraceCheckUtils]: 96: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,475 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {17566#true} {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #93#return; {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,475 INFO L272 TraceCheckUtils]: 98: Hoare triple {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L290 TraceCheckUtils]: 99: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L290 TraceCheckUtils]: 100: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L290 TraceCheckUtils]: 101: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {17566#true} {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #95#return; {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,476 INFO L272 TraceCheckUtils]: 103: Hoare triple {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L290 TraceCheckUtils]: 104: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L290 TraceCheckUtils]: 105: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,476 INFO L290 TraceCheckUtils]: 106: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,477 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {17566#true} {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} #97#return; {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,478 INFO L290 TraceCheckUtils]: 108: Hoare triple {17833#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,478 INFO L290 TraceCheckUtils]: 109: Hoare triple {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} assume !false; {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,478 INFO L272 TraceCheckUtils]: 110: Hoare triple {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,478 INFO L290 TraceCheckUtils]: 111: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,478 INFO L290 TraceCheckUtils]: 112: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,478 INFO L290 TraceCheckUtils]: 113: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,479 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {17566#true} {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} #91#return; {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,479 INFO L272 TraceCheckUtils]: 115: Hoare triple {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,479 INFO L290 TraceCheckUtils]: 116: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,479 INFO L290 TraceCheckUtils]: 117: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,479 INFO L290 TraceCheckUtils]: 118: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,480 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {17566#true} {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} #93#return; {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,480 INFO L272 TraceCheckUtils]: 120: Hoare triple {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,480 INFO L290 TraceCheckUtils]: 121: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,480 INFO L290 TraceCheckUtils]: 122: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,480 INFO L290 TraceCheckUtils]: 123: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,481 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {17566#true} {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} #95#return; {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,481 INFO L272 TraceCheckUtils]: 125: Hoare triple {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,481 INFO L290 TraceCheckUtils]: 126: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,481 INFO L290 TraceCheckUtils]: 127: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,481 INFO L290 TraceCheckUtils]: 128: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,482 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {17566#true} {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} #97#return; {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,482 INFO L290 TraceCheckUtils]: 130: Hoare triple {17900#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,483 INFO L290 TraceCheckUtils]: 131: Hoare triple {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} assume !false; {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,483 INFO L272 TraceCheckUtils]: 132: Hoare triple {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,483 INFO L290 TraceCheckUtils]: 133: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,483 INFO L290 TraceCheckUtils]: 134: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,483 INFO L290 TraceCheckUtils]: 135: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,484 INFO L284 TraceCheckUtils]: 136: Hoare quadruple {17566#true} {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} #91#return; {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,484 INFO L272 TraceCheckUtils]: 137: Hoare triple {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,484 INFO L290 TraceCheckUtils]: 138: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,484 INFO L290 TraceCheckUtils]: 139: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,484 INFO L290 TraceCheckUtils]: 140: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,485 INFO L284 TraceCheckUtils]: 141: Hoare quadruple {17566#true} {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} #93#return; {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,485 INFO L272 TraceCheckUtils]: 142: Hoare triple {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,485 INFO L290 TraceCheckUtils]: 143: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,485 INFO L290 TraceCheckUtils]: 144: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,485 INFO L290 TraceCheckUtils]: 145: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,486 INFO L284 TraceCheckUtils]: 146: Hoare quadruple {17566#true} {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} #95#return; {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,486 INFO L272 TraceCheckUtils]: 147: Hoare triple {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:26,486 INFO L290 TraceCheckUtils]: 148: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:26,486 INFO L290 TraceCheckUtils]: 149: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:26,486 INFO L290 TraceCheckUtils]: 150: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:26,486 INFO L284 TraceCheckUtils]: 151: Hoare quadruple {17566#true} {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} #97#return; {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,487 INFO L290 TraceCheckUtils]: 152: Hoare triple {17967#(and (= (+ (- 1) main_~k~0) 2) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (<= (* main_~b~0 3) main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~y~0) main_~c~0) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {18034#(and (= (+ (- 1) main_~k~0) 2) (= main_~c~0 (+ main_~y~0 (* main_~x~0 (- 3)))) (= main_~s~0 0) (not (<= main_~x~0 main_~c~0)) (= main_~p~0 0) (= main_~r~0 1) (<= (* main_~x~0 3) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-27 13:11:26,488 INFO L290 TraceCheckUtils]: 153: Hoare triple {18034#(and (= (+ (- 1) main_~k~0) 2) (= main_~c~0 (+ main_~y~0 (* main_~x~0 (- 3)))) (= main_~s~0 0) (not (<= main_~x~0 main_~c~0)) (= main_~p~0 0) (= main_~r~0 1) (<= (* main_~x~0 3) main_~y~0) (= main_~q~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18038#(and (not (<= (* main_~x~0 4) main_~y~0)) (= main_~s~0 1) (<= (* main_~x~0 3) main_~y~0) (= (+ main_~q~0 3) 0) (= main_~b~0 (+ main_~y~0 (* main_~x~0 (- 3)))))} is VALID [2022-04-27 13:11:26,493 INFO L290 TraceCheckUtils]: 154: Hoare triple {18038#(and (not (<= (* main_~x~0 4) main_~y~0)) (= main_~s~0 1) (<= (* main_~x~0 3) main_~y~0) (= (+ main_~q~0 3) 0) (= main_~b~0 (+ main_~y~0 (* main_~x~0 (- 3)))))} assume !false; {18038#(and (not (<= (* main_~x~0 4) main_~y~0)) (= main_~s~0 1) (<= (* main_~x~0 3) main_~y~0) (= (+ main_~q~0 3) 0) (= main_~b~0 (+ main_~y~0 (* main_~x~0 (- 3)))))} is VALID [2022-04-27 13:11:26,495 INFO L290 TraceCheckUtils]: 155: Hoare triple {18038#(and (not (<= (* main_~x~0 4) main_~y~0)) (= main_~s~0 1) (<= (* main_~x~0 3) main_~y~0) (= (+ main_~q~0 3) 0) (= main_~b~0 (+ main_~y~0 (* main_~x~0 (- 3)))))} assume !(0 != ~b~0); {18045#(and (= main_~s~0 1) (< main_~y~0 (* main_~x~0 4)) (= (+ main_~q~0 3) 0) (= (* main_~x~0 3) main_~y~0))} is VALID [2022-04-27 13:11:26,496 INFO L272 TraceCheckUtils]: 156: Hoare triple {18045#(and (= main_~s~0 1) (< main_~y~0 (* main_~x~0 4)) (= (+ main_~q~0 3) 0) (= (* main_~x~0 3) main_~y~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {18049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:11:26,496 INFO L290 TraceCheckUtils]: 157: Hoare triple {18049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:11:26,496 INFO L290 TraceCheckUtils]: 158: Hoare triple {18053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17567#false} is VALID [2022-04-27 13:11:26,496 INFO L290 TraceCheckUtils]: 159: Hoare triple {17567#false} assume !false; {17567#false} is VALID [2022-04-27 13:11:26,497 INFO L134 CoverageAnalysis]: Checked inductivity of 927 backedges. 40 proven. 67 refuted. 0 times theorem prover too weak. 820 trivial. 0 not checked. [2022-04-27 13:11:26,497 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:11:28,737 INFO L290 TraceCheckUtils]: 159: Hoare triple {17567#false} assume !false; {17567#false} is VALID [2022-04-27 13:11:28,738 INFO L290 TraceCheckUtils]: 158: Hoare triple {18053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {17567#false} is VALID [2022-04-27 13:11:28,738 INFO L290 TraceCheckUtils]: 157: Hoare triple {18049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:11:28,739 INFO L272 TraceCheckUtils]: 156: Hoare triple {18069#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {18049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:11:28,740 INFO L290 TraceCheckUtils]: 155: Hoare triple {18073#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {18069#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-27 13:11:28,740 INFO L290 TraceCheckUtils]: 154: Hoare triple {18073#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {18073#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 13:11:30,741 WARN L290 TraceCheckUtils]: 153: Hoare triple {18080#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 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; {18073#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is UNKNOWN [2022-04-27 13:11:30,742 INFO L290 TraceCheckUtils]: 152: Hoare triple {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {18080#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:11:30,743 INFO L284 TraceCheckUtils]: 151: Hoare quadruple {17566#true} {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #97#return; {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:11:30,743 INFO L290 TraceCheckUtils]: 150: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:30,743 INFO L290 TraceCheckUtils]: 149: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:30,743 INFO L290 TraceCheckUtils]: 148: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:30,743 INFO L272 TraceCheckUtils]: 147: Hoare triple {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:30,744 INFO L284 TraceCheckUtils]: 146: Hoare quadruple {17566#true} {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #95#return; {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:11:30,744 INFO L290 TraceCheckUtils]: 145: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:30,744 INFO L290 TraceCheckUtils]: 144: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:30,744 INFO L290 TraceCheckUtils]: 143: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:30,744 INFO L272 TraceCheckUtils]: 142: Hoare triple {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:30,745 INFO L284 TraceCheckUtils]: 141: Hoare quadruple {17566#true} {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #93#return; {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:11:30,746 INFO L290 TraceCheckUtils]: 140: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:30,746 INFO L290 TraceCheckUtils]: 139: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:30,746 INFO L290 TraceCheckUtils]: 138: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:30,746 INFO L272 TraceCheckUtils]: 137: Hoare triple {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:30,746 INFO L284 TraceCheckUtils]: 136: Hoare quadruple {17566#true} {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #91#return; {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:11:30,746 INFO L290 TraceCheckUtils]: 135: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:30,746 INFO L290 TraceCheckUtils]: 134: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:30,747 INFO L290 TraceCheckUtils]: 133: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:30,747 INFO L272 TraceCheckUtils]: 132: Hoare triple {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:30,747 INFO L290 TraceCheckUtils]: 131: Hoare triple {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !false; {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:11:31,013 INFO L290 TraceCheckUtils]: 130: Hoare triple {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18084#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:11:31,014 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {17566#true} {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} #97#return; {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:11:31,014 INFO L290 TraceCheckUtils]: 128: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,014 INFO L290 TraceCheckUtils]: 127: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,014 INFO L290 TraceCheckUtils]: 126: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,014 INFO L272 TraceCheckUtils]: 125: Hoare triple {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:31,015 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {17566#true} {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} #95#return; {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:11:31,015 INFO L290 TraceCheckUtils]: 123: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,015 INFO L290 TraceCheckUtils]: 122: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,015 INFO L290 TraceCheckUtils]: 121: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,015 INFO L272 TraceCheckUtils]: 120: Hoare triple {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:31,016 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {17566#true} {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} #93#return; {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:11:31,016 INFO L290 TraceCheckUtils]: 118: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,016 INFO L290 TraceCheckUtils]: 117: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,016 INFO L290 TraceCheckUtils]: 116: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,016 INFO L272 TraceCheckUtils]: 115: Hoare triple {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:31,017 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {17566#true} {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} #91#return; {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:11:31,017 INFO L290 TraceCheckUtils]: 113: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,017 INFO L290 TraceCheckUtils]: 112: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,017 INFO L290 TraceCheckUtils]: 111: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,017 INFO L272 TraceCheckUtils]: 110: Hoare triple {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:31,017 INFO L290 TraceCheckUtils]: 109: Hoare triple {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} assume !false; {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:11:31,676 INFO L290 TraceCheckUtils]: 108: Hoare triple {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18151#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:11:31,677 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {17566#true} {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:31,677 INFO L290 TraceCheckUtils]: 106: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L290 TraceCheckUtils]: 105: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L290 TraceCheckUtils]: 104: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L272 TraceCheckUtils]: 103: Hoare triple {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {17566#true} {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:31,678 INFO L290 TraceCheckUtils]: 101: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L290 TraceCheckUtils]: 100: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L290 TraceCheckUtils]: 99: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,678 INFO L272 TraceCheckUtils]: 98: Hoare triple {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {17566#true} is VALID [2022-04-27 13:11:31,679 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {17566#true} {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:31,679 INFO L290 TraceCheckUtils]: 96: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,679 INFO L290 TraceCheckUtils]: 95: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,679 INFO L290 TraceCheckUtils]: 94: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,679 INFO L272 TraceCheckUtils]: 93: Hoare triple {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {17566#true} is VALID [2022-04-27 13:11:31,684 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {17566#true} {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:31,684 INFO L290 TraceCheckUtils]: 91: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:31,684 INFO L290 TraceCheckUtils]: 90: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:31,684 INFO L290 TraceCheckUtils]: 89: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:31,684 INFO L272 TraceCheckUtils]: 88: Hoare triple {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~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)); {17566#true} is VALID [2022-04-27 13:11:31,685 INFO L290 TraceCheckUtils]: 87: Hoare triple {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,323 INFO L290 TraceCheckUtils]: 86: Hoare triple {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18218#(or (not (= main_~b~0 (+ main_~c~0 (* (- 1) main_~b~0)))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,323 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {17566#true} {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #97#return; {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,324 INFO L290 TraceCheckUtils]: 84: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,324 INFO L290 TraceCheckUtils]: 83: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,324 INFO L290 TraceCheckUtils]: 82: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,324 INFO L272 TraceCheckUtils]: 81: Hoare triple {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,324 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {17566#true} {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #95#return; {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,324 INFO L290 TraceCheckUtils]: 79: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L290 TraceCheckUtils]: 78: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L290 TraceCheckUtils]: 77: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L272 TraceCheckUtils]: 76: Hoare triple {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {17566#true} {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #93#return; {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,325 INFO L290 TraceCheckUtils]: 74: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L290 TraceCheckUtils]: 73: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L290 TraceCheckUtils]: 72: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,325 INFO L272 TraceCheckUtils]: 71: Hoare triple {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {17566#true} is VALID [2022-04-27 13:11:32,326 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {17566#true} {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #91#return; {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,326 INFO L290 TraceCheckUtils]: 69: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,326 INFO L290 TraceCheckUtils]: 68: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,326 INFO L290 TraceCheckUtils]: 67: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,326 INFO L272 TraceCheckUtils]: 66: Hoare triple {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~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)); {17566#true} is VALID [2022-04-27 13:11:32,327 INFO L290 TraceCheckUtils]: 65: Hoare triple {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,327 INFO L290 TraceCheckUtils]: 64: Hoare triple {18352#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 2) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (* main_~b~0 2))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18285#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) (* main_~b~0 2))) (<= main_~b~0 0) (= (+ (* (+ main_~k~0 2) main_~y~0 main_~s~0) (* main_~q~0 main_~x~0) (* (+ main_~k~0 2) main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:11:32,328 INFO L290 TraceCheckUtils]: 63: Hoare triple {18352#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 2) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (* main_~b~0 2))))} assume !false; {18352#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 2) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (* main_~b~0 2))))} is VALID [2022-04-27 13:11:32,562 INFO L290 TraceCheckUtils]: 62: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18352#(or (<= main_~b~0 0) (= (+ (* main_~q~0 main_~x~0) (* main_~q~0 main_~x~0 2) (* main_~y~0 main_~s~0) (* main_~y~0 main_~s~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) (* main_~b~0 2))))} is VALID [2022-04-27 13:11:32,563 INFO L290 TraceCheckUtils]: 61: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} assume !(~c~0 >= ~b~0); {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,564 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {17566#true} {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} #97#return; {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,564 INFO L290 TraceCheckUtils]: 59: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,564 INFO L290 TraceCheckUtils]: 58: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,564 INFO L290 TraceCheckUtils]: 57: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,564 INFO L272 TraceCheckUtils]: 56: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,565 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {17566#true} {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} #95#return; {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,565 INFO L290 TraceCheckUtils]: 54: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,565 INFO L290 TraceCheckUtils]: 53: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,565 INFO L290 TraceCheckUtils]: 52: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,565 INFO L272 TraceCheckUtils]: 51: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,566 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {17566#true} {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} #93#return; {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,566 INFO L290 TraceCheckUtils]: 49: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,566 INFO L290 TraceCheckUtils]: 48: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,566 INFO L290 TraceCheckUtils]: 47: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,566 INFO L272 TraceCheckUtils]: 46: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,567 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {17566#true} {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} #91#return; {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,567 INFO L290 TraceCheckUtils]: 44: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,567 INFO L290 TraceCheckUtils]: 43: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,567 INFO L290 TraceCheckUtils]: 42: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,567 INFO L272 TraceCheckUtils]: 41: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,567 INFO L290 TraceCheckUtils]: 40: Hoare triple {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} assume !false; {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,568 INFO L290 TraceCheckUtils]: 39: Hoare triple {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18359#(or (not (= (* main_~c~0 3) main_~b~0)) (= (+ (* (+ (* (* 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 2) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0 2) (* (+ 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))) (<= main_~c~0 0))} is VALID [2022-04-27 13:11:32,568 INFO L290 TraceCheckUtils]: 38: Hoare triple {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} assume !false; {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} is VALID [2022-04-27 13:11:32,569 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {17566#true} {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} #89#return; {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} is VALID [2022-04-27 13:11:32,569 INFO L290 TraceCheckUtils]: 36: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,569 INFO L290 TraceCheckUtils]: 35: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,569 INFO L290 TraceCheckUtils]: 34: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,569 INFO L272 TraceCheckUtils]: 33: Hoare triple {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,570 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {17566#true} {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} #87#return; {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} is VALID [2022-04-27 13:11:32,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,570 INFO L290 TraceCheckUtils]: 29: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,570 INFO L272 TraceCheckUtils]: 28: Hoare triple {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 27: Hoare triple {17566#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18429#(or (not (= (* main_~a~0 3) main_~b~0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0 2) (* main_~p~0 main_~x~0) (* main_~y~0 main_~r~0 2))) (<= main_~a~0 0))} is VALID [2022-04-27 13:11:32,571 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {17566#true} {17566#true} #85#return; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 25: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 24: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 23: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L272 TraceCheckUtils]: 22: Hoare triple {17566#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {17566#true} {17566#true} #83#return; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 20: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 19: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 18: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L272 TraceCheckUtils]: 17: Hoare triple {17566#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {17566#true} {17566#true} #81#return; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 15: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 14: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 13: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L272 TraceCheckUtils]: 12: Hoare triple {17566#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 11: Hoare triple {17566#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17566#true} {17566#true} #79#return; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 9: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {17566#true} assume !(0 == ~cond); {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L290 TraceCheckUtils]: 7: Hoare triple {17566#true} ~cond := #in~cond; {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L272 TraceCheckUtils]: 6: Hoare triple {17566#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L290 TraceCheckUtils]: 5: Hoare triple {17566#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L272 TraceCheckUtils]: 4: Hoare triple {17566#true} call #t~ret6 := main(); {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17566#true} {17566#true} #103#return; {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L290 TraceCheckUtils]: 2: Hoare triple {17566#true} assume true; {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L290 TraceCheckUtils]: 1: Hoare triple {17566#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); {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L272 TraceCheckUtils]: 0: Hoare triple {17566#true} call ULTIMATE.init(); {17566#true} is VALID [2022-04-27 13:11:32,572 INFO L134 CoverageAnalysis]: Checked inductivity of 927 backedges. 40 proven. 67 refuted. 0 times theorem prover too weak. 820 trivial. 0 not checked. [2022-04-27 13:11:32,573 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:11:32,573 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [259256663] [2022-04-27 13:11:32,573 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:11:32,573 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1206898756] [2022-04-27 13:11:32,573 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1206898756] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:11:32,573 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:11:32,573 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 24 [2022-04-27 13:11:32,573 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [397665441] [2022-04-27 13:11:32,573 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:11:32,574 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) Word has length 160 [2022-04-27 13:11:32,574 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:11:32,575 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:11:34,839 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:11:34,839 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-27 13:11:34,839 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:11:34,840 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-27 13:11:34,840 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=459, Unknown=0, NotChecked=0, Total=552 [2022-04-27 13:11:34,840 INFO L87 Difference]: Start difference. First operand 355 states and 501 transitions. Second operand has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:13:16,148 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:13:16,148 INFO L93 Difference]: Finished difference Result 488 states and 707 transitions. [2022-04-27 13:13:16,149 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 50 states. [2022-04-27 13:13:16,149 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) Word has length 160 [2022-04-27 13:13:16,149 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:13:16,149 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:13:16,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 359 transitions. [2022-04-27 13:13:16,159 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:13:16,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 359 transitions. [2022-04-27 13:13:16,177 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 359 transitions. [2022-04-27 13:13:19,188 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 359 edges. 359 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:13:19,207 INFO L225 Difference]: With dead ends: 488 [2022-04-27 13:13:19,207 INFO L226 Difference]: Without dead ends: 480 [2022-04-27 13:13:19,208 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 364 GetRequests, 296 SyntacticMatches, 1 SemanticMatches, 67 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1037 ImplicationChecksByTransitivity, 25.9s TimeCoverageRelationStatistics Valid=874, Invalid=3818, Unknown=0, NotChecked=0, Total=4692 [2022-04-27 13:13:19,209 INFO L413 NwaCegarLoop]: 144 mSDtfsCounter, 133 mSDsluCounter, 591 mSDsCounter, 0 mSdLazyCounter, 2371 mSolverCounterSat, 446 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 36.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 141 SdHoareTripleChecker+Valid, 735 SdHoareTripleChecker+Invalid, 2817 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 446 IncrementalHoareTripleChecker+Valid, 2371 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 36.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:13:19,209 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [141 Valid, 735 Invalid, 2817 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [446 Valid, 2371 Invalid, 0 Unknown, 0 Unchecked, 36.6s Time] [2022-04-27 13:13:19,209 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 480 states. [2022-04-27 13:13:20,391 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 480 to 410. [2022-04-27 13:13:20,391 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:13:20,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 480 states. Second operand has 410 states, 205 states have (on average 1.1804878048780487) internal successors, (242), 207 states have internal predecessors, (242), 177 states have call successors, (177), 28 states have call predecessors, (177), 27 states have return successors, (175), 174 states have call predecessors, (175), 175 states have call successors, (175) [2022-04-27 13:13:20,396 INFO L74 IsIncluded]: Start isIncluded. First operand 480 states. Second operand has 410 states, 205 states have (on average 1.1804878048780487) internal successors, (242), 207 states have internal predecessors, (242), 177 states have call successors, (177), 28 states have call predecessors, (177), 27 states have return successors, (175), 174 states have call predecessors, (175), 175 states have call successors, (175) [2022-04-27 13:13:20,397 INFO L87 Difference]: Start difference. First operand 480 states. Second operand has 410 states, 205 states have (on average 1.1804878048780487) internal successors, (242), 207 states have internal predecessors, (242), 177 states have call successors, (177), 28 states have call predecessors, (177), 27 states have return successors, (175), 174 states have call predecessors, (175), 175 states have call successors, (175) [2022-04-27 13:13:20,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:13:20,416 INFO L93 Difference]: Finished difference Result 480 states and 696 transitions. [2022-04-27 13:13:20,417 INFO L276 IsEmpty]: Start isEmpty. Operand 480 states and 696 transitions. [2022-04-27 13:13:20,419 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:13:20,419 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:13:20,420 INFO L74 IsIncluded]: Start isIncluded. First operand has 410 states, 205 states have (on average 1.1804878048780487) internal successors, (242), 207 states have internal predecessors, (242), 177 states have call successors, (177), 28 states have call predecessors, (177), 27 states have return successors, (175), 174 states have call predecessors, (175), 175 states have call successors, (175) Second operand 480 states. [2022-04-27 13:13:20,420 INFO L87 Difference]: Start difference. First operand has 410 states, 205 states have (on average 1.1804878048780487) internal successors, (242), 207 states have internal predecessors, (242), 177 states have call successors, (177), 28 states have call predecessors, (177), 27 states have return successors, (175), 174 states have call predecessors, (175), 175 states have call successors, (175) Second operand 480 states. [2022-04-27 13:13:20,442 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:13:20,442 INFO L93 Difference]: Finished difference Result 480 states and 696 transitions. [2022-04-27 13:13:20,442 INFO L276 IsEmpty]: Start isEmpty. Operand 480 states and 696 transitions. [2022-04-27 13:13:20,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:13:20,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:13:20,444 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:13:20,444 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:13:20,445 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 410 states, 205 states have (on average 1.1804878048780487) internal successors, (242), 207 states have internal predecessors, (242), 177 states have call successors, (177), 28 states have call predecessors, (177), 27 states have return successors, (175), 174 states have call predecessors, (175), 175 states have call successors, (175) [2022-04-27 13:13:20,463 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 410 states to 410 states and 594 transitions. [2022-04-27 13:13:20,463 INFO L78 Accepts]: Start accepts. Automaton has 410 states and 594 transitions. Word has length 160 [2022-04-27 13:13:20,463 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:13:20,463 INFO L495 AbstractCegarLoop]: Abstraction has 410 states and 594 transitions. [2022-04-27 13:13:20,464 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 22 states have (on average 2.3181818181818183) internal successors, (51), 23 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:13:20,464 INFO L276 IsEmpty]: Start isEmpty. Operand 410 states and 594 transitions. [2022-04-27 13:13:20,465 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 161 [2022-04-27 13:13:20,465 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:13:20,465 INFO L195 NwaCegarLoop]: trace histogram [21, 20, 20, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 5, 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] [2022-04-27 13:13:20,491 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-27 13:13:20,689 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-27 13:13:20,689 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:13:20,689 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:13:20,689 INFO L85 PathProgramCache]: Analyzing trace with hash 1560660366, now seen corresponding path program 6 times [2022-04-27 13:13:20,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:13:20,690 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [140108260] [2022-04-27 13:13:20,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:13:20,690 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:13:20,710 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:13:20,710 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [478826981] [2022-04-27 13:13:20,711 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 13:13:20,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:13:20,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:13:20,712 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-27 13:13:20,712 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-27 13:13:21,035 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-27 13:13:21,035 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:13:21,038 INFO L263 TraceCheckSpWp]: Trace formula consists of 375 conjuncts, 61 conjunts are in the unsatisfiable core [2022-04-27 13:13:21,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:13:21,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:13:22,720 INFO L272 TraceCheckUtils]: 0: Hoare triple {21061#true} call ULTIMATE.init(); {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L290 TraceCheckUtils]: 1: Hoare triple {21061#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); {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L290 TraceCheckUtils]: 2: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21061#true} {21061#true} #103#return; {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L272 TraceCheckUtils]: 4: Hoare triple {21061#true} call #t~ret6 := main(); {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L290 TraceCheckUtils]: 5: Hoare triple {21061#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L272 TraceCheckUtils]: 6: Hoare triple {21061#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L290 TraceCheckUtils]: 7: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 9: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21061#true} {21061#true} #79#return; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 11: Hoare triple {21061#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L272 TraceCheckUtils]: 12: Hoare triple {21061#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 13: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 14: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 15: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {21061#true} {21061#true} #81#return; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L272 TraceCheckUtils]: 17: Hoare triple {21061#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 18: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 19: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 20: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21061#true} {21061#true} #83#return; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L272 TraceCheckUtils]: 22: Hoare triple {21061#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 23: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 24: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L290 TraceCheckUtils]: 25: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,721 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {21061#true} {21061#true} #85#return; {21061#true} is VALID [2022-04-27 13:13:22,722 INFO L290 TraceCheckUtils]: 27: Hoare triple {21061#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {21147#(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-27 13:13:22,722 INFO L272 TraceCheckUtils]: 28: Hoare triple {21147#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,722 INFO L290 TraceCheckUtils]: 29: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,722 INFO L290 TraceCheckUtils]: 30: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,722 INFO L290 TraceCheckUtils]: 31: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,723 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {21061#true} {21147#(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))} #87#return; {21147#(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-27 13:13:22,723 INFO L272 TraceCheckUtils]: 33: Hoare triple {21147#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,723 INFO L290 TraceCheckUtils]: 34: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,723 INFO L290 TraceCheckUtils]: 35: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,723 INFO L290 TraceCheckUtils]: 36: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,723 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {21061#true} {21147#(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))} #89#return; {21147#(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-27 13:13:22,724 INFO L290 TraceCheckUtils]: 38: Hoare triple {21147#(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; {21147#(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-27 13:13:22,724 INFO L290 TraceCheckUtils]: 39: Hoare triple {21147#(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);~c~0 := ~a~0;~k~0 := 0; {21184#(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-27 13:13:22,724 INFO L290 TraceCheckUtils]: 40: Hoare triple {21184#(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; {21184#(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-27 13:13:22,725 INFO L272 TraceCheckUtils]: 41: Hoare triple {21184#(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)); {21061#true} is VALID [2022-04-27 13:13:22,725 INFO L290 TraceCheckUtils]: 42: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,725 INFO L290 TraceCheckUtils]: 43: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,725 INFO L290 TraceCheckUtils]: 44: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,725 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {21061#true} {21184#(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))} #91#return; {21184#(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-27 13:13:22,725 INFO L272 TraceCheckUtils]: 46: Hoare triple {21184#(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)); {21061#true} is VALID [2022-04-27 13:13:22,725 INFO L290 TraceCheckUtils]: 47: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,726 INFO L290 TraceCheckUtils]: 48: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,726 INFO L290 TraceCheckUtils]: 49: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,728 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {21061#true} {21184#(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))} #93#return; {21184#(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-27 13:13:22,728 INFO L272 TraceCheckUtils]: 51: Hoare triple {21184#(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)); {21061#true} is VALID [2022-04-27 13:13:22,728 INFO L290 TraceCheckUtils]: 52: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,728 INFO L290 TraceCheckUtils]: 53: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,728 INFO L290 TraceCheckUtils]: 54: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,729 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21061#true} {21184#(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; {21184#(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-27 13:13:22,729 INFO L272 TraceCheckUtils]: 56: Hoare triple {21184#(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 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,729 INFO L290 TraceCheckUtils]: 57: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,729 INFO L290 TraceCheckUtils]: 58: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,729 INFO L290 TraceCheckUtils]: 59: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,730 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {21061#true} {21184#(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; {21184#(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-27 13:13:22,731 INFO L290 TraceCheckUtils]: 61: Hoare triple {21184#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,732 INFO L290 TraceCheckUtils]: 62: Hoare triple {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !false; {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,732 INFO L272 TraceCheckUtils]: 63: Hoare triple {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,732 INFO L290 TraceCheckUtils]: 64: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,732 INFO L290 TraceCheckUtils]: 65: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,732 INFO L290 TraceCheckUtils]: 66: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,733 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {21061#true} {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #91#return; {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,733 INFO L272 TraceCheckUtils]: 68: Hoare triple {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= 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)); {21061#true} is VALID [2022-04-27 13:13:22,733 INFO L290 TraceCheckUtils]: 69: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,733 INFO L290 TraceCheckUtils]: 70: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,733 INFO L290 TraceCheckUtils]: 71: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,734 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {21061#true} {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #93#return; {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,734 INFO L272 TraceCheckUtils]: 73: Hoare triple {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= 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)); {21061#true} is VALID [2022-04-27 13:13:22,734 INFO L290 TraceCheckUtils]: 74: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,734 INFO L290 TraceCheckUtils]: 75: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,734 INFO L290 TraceCheckUtils]: 76: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,735 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {21061#true} {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #95#return; {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,735 INFO L272 TraceCheckUtils]: 78: Hoare triple {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,735 INFO L290 TraceCheckUtils]: 79: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,735 INFO L290 TraceCheckUtils]: 80: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,735 INFO L290 TraceCheckUtils]: 81: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,736 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {21061#true} {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #97#return; {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,736 INFO L290 TraceCheckUtils]: 83: Hoare triple {21251#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {21318#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:13:22,737 INFO L290 TraceCheckUtils]: 84: Hoare triple {21318#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~x~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~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; {21322#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,738 INFO L290 TraceCheckUtils]: 85: Hoare triple {21322#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !false; {21322#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,738 INFO L290 TraceCheckUtils]: 86: Hoare triple {21322#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,739 INFO L290 TraceCheckUtils]: 87: Hoare triple {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} assume !false; {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,739 INFO L272 TraceCheckUtils]: 88: Hoare triple {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,739 INFO L290 TraceCheckUtils]: 89: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,739 INFO L290 TraceCheckUtils]: 90: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,739 INFO L290 TraceCheckUtils]: 91: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,739 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {21061#true} {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} #91#return; {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,739 INFO L272 TraceCheckUtils]: 93: Hoare triple {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L290 TraceCheckUtils]: 94: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L290 TraceCheckUtils]: 95: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L290 TraceCheckUtils]: 96: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {21061#true} {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} #93#return; {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,740 INFO L272 TraceCheckUtils]: 98: Hoare triple {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L290 TraceCheckUtils]: 99: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L290 TraceCheckUtils]: 100: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,740 INFO L290 TraceCheckUtils]: 101: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,741 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {21061#true} {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} #95#return; {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,741 INFO L272 TraceCheckUtils]: 103: Hoare triple {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,741 INFO L290 TraceCheckUtils]: 104: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,741 INFO L290 TraceCheckUtils]: 105: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,741 INFO L290 TraceCheckUtils]: 106: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,742 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {21061#true} {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} #97#return; {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,742 INFO L290 TraceCheckUtils]: 108: Hoare triple {21329#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ main_~s~0 1) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,743 INFO L290 TraceCheckUtils]: 109: Hoare triple {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} assume !false; {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,743 INFO L272 TraceCheckUtils]: 110: Hoare triple {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,743 INFO L290 TraceCheckUtils]: 111: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,743 INFO L290 TraceCheckUtils]: 112: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,743 INFO L290 TraceCheckUtils]: 113: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,744 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {21061#true} {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #91#return; {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,744 INFO L272 TraceCheckUtils]: 115: Hoare triple {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,744 INFO L290 TraceCheckUtils]: 116: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,744 INFO L290 TraceCheckUtils]: 117: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,744 INFO L290 TraceCheckUtils]: 118: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,745 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {21061#true} {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #93#return; {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,745 INFO L272 TraceCheckUtils]: 120: Hoare triple {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,745 INFO L290 TraceCheckUtils]: 121: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,745 INFO L290 TraceCheckUtils]: 122: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,745 INFO L290 TraceCheckUtils]: 123: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,752 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {21061#true} {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #95#return; {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,752 INFO L272 TraceCheckUtils]: 125: Hoare triple {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,752 INFO L290 TraceCheckUtils]: 126: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,753 INFO L290 TraceCheckUtils]: 127: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,753 INFO L290 TraceCheckUtils]: 128: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,754 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {21061#true} {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #97#return; {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,755 INFO L290 TraceCheckUtils]: 130: Hoare triple {21396#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= (+ main_~s~0 1) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,759 INFO L290 TraceCheckUtils]: 131: Hoare triple {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} assume !false; {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,759 INFO L272 TraceCheckUtils]: 132: Hoare triple {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,760 INFO L290 TraceCheckUtils]: 133: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,760 INFO L290 TraceCheckUtils]: 134: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,760 INFO L290 TraceCheckUtils]: 135: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,761 INFO L284 TraceCheckUtils]: 136: Hoare quadruple {21061#true} {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #91#return; {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,761 INFO L272 TraceCheckUtils]: 137: Hoare triple {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,761 INFO L290 TraceCheckUtils]: 138: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,761 INFO L290 TraceCheckUtils]: 139: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,761 INFO L290 TraceCheckUtils]: 140: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,762 INFO L284 TraceCheckUtils]: 141: Hoare quadruple {21061#true} {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #93#return; {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,762 INFO L272 TraceCheckUtils]: 142: Hoare triple {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,762 INFO L290 TraceCheckUtils]: 143: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,762 INFO L290 TraceCheckUtils]: 144: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,762 INFO L290 TraceCheckUtils]: 145: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,763 INFO L284 TraceCheckUtils]: 146: Hoare quadruple {21061#true} {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #95#return; {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,763 INFO L272 TraceCheckUtils]: 147: Hoare triple {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:22,763 INFO L290 TraceCheckUtils]: 148: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:22,763 INFO L290 TraceCheckUtils]: 149: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:22,764 INFO L290 TraceCheckUtils]: 150: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:22,765 INFO L284 TraceCheckUtils]: 151: Hoare quadruple {21061#true} {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} #97#return; {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:13:22,766 INFO L290 TraceCheckUtils]: 152: Hoare triple {21463#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= (+ (* (- 2) main_~b~0) main_~y~0) main_~c~0) (= main_~r~0 1) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0))} assume !(~c~0 >= ~b~0); {21530#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~x~0) (* main_~y~0 3))) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0) (not (<= main_~x~0 (+ main_~c~0 main_~y~0))))} is VALID [2022-04-27 13:13:22,767 INFO L290 TraceCheckUtils]: 153: Hoare triple {21530#(and (not (<= (* main_~y~0 2) main_~x~0)) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~c~0 (+ (* (- 2) main_~x~0) (* main_~y~0 3))) (= (+ (- 2) main_~k~0) 0) (= (+ main_~s~0 1) 0) (not (<= main_~x~0 (+ main_~c~0 main_~y~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; {21534#(and (not (<= (* main_~x~0 3) (* main_~y~0 4))) (not (<= (* main_~y~0 2) main_~x~0)) (= main_~b~0 (+ (* (- 2) main_~x~0) (* main_~y~0 3))) (= (+ (- 2) (* (- 1) main_~q~0)) 0) (= (+ main_~q~0 main_~s~0) 1))} is VALID [2022-04-27 13:13:22,768 INFO L290 TraceCheckUtils]: 154: Hoare triple {21534#(and (not (<= (* main_~x~0 3) (* main_~y~0 4))) (not (<= (* main_~y~0 2) main_~x~0)) (= main_~b~0 (+ (* (- 2) main_~x~0) (* main_~y~0 3))) (= (+ (- 2) (* (- 1) main_~q~0)) 0) (= (+ main_~q~0 main_~s~0) 1))} assume !false; {21534#(and (not (<= (* main_~x~0 3) (* main_~y~0 4))) (not (<= (* main_~y~0 2) main_~x~0)) (= main_~b~0 (+ (* (- 2) main_~x~0) (* main_~y~0 3))) (= (+ (- 2) (* (- 1) main_~q~0)) 0) (= (+ main_~q~0 main_~s~0) 1))} is VALID [2022-04-27 13:13:22,768 INFO L290 TraceCheckUtils]: 155: Hoare triple {21534#(and (not (<= (* main_~x~0 3) (* main_~y~0 4))) (not (<= (* main_~y~0 2) main_~x~0)) (= main_~b~0 (+ (* (- 2) main_~x~0) (* main_~y~0 3))) (= (+ (- 2) (* (- 1) main_~q~0)) 0) (= (+ main_~q~0 main_~s~0) 1))} assume !(0 != ~b~0); {21541#(and (= (* main_~x~0 2) (* main_~y~0 3)) (= (+ main_~q~0 2) 0) (< main_~x~0 (* main_~y~0 2)) (= (+ main_~q~0 main_~s~0) 1))} is VALID [2022-04-27 13:13:22,769 INFO L272 TraceCheckUtils]: 156: Hoare triple {21541#(and (= (* main_~x~0 2) (* main_~y~0 3)) (= (+ main_~q~0 2) 0) (< main_~x~0 (* main_~y~0 2)) (= (+ main_~q~0 main_~s~0) 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {21545#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:13:22,770 INFO L290 TraceCheckUtils]: 157: Hoare triple {21545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:13:22,770 INFO L290 TraceCheckUtils]: 158: Hoare triple {21549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21062#false} is VALID [2022-04-27 13:13:22,770 INFO L290 TraceCheckUtils]: 159: Hoare triple {21062#false} assume !false; {21062#false} is VALID [2022-04-27 13:13:22,771 INFO L134 CoverageAnalysis]: Checked inductivity of 927 backedges. 40 proven. 67 refuted. 0 times theorem prover too weak. 820 trivial. 0 not checked. [2022-04-27 13:13:22,771 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:13:34,169 INFO L290 TraceCheckUtils]: 159: Hoare triple {21062#false} assume !false; {21062#false} is VALID [2022-04-27 13:13:34,169 INFO L290 TraceCheckUtils]: 158: Hoare triple {21549#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {21062#false} is VALID [2022-04-27 13:13:34,170 INFO L290 TraceCheckUtils]: 157: Hoare triple {21545#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {21549#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:13:34,170 INFO L272 TraceCheckUtils]: 156: Hoare triple {21565#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {21545#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:13:34,171 INFO L290 TraceCheckUtils]: 155: Hoare triple {21569#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {21565#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-27 13:13:34,171 INFO L290 TraceCheckUtils]: 154: Hoare triple {21569#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {21569#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 13:13:36,173 WARN L290 TraceCheckUtils]: 153: Hoare triple {21576#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 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; {21569#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is UNKNOWN [2022-04-27 13:13:36,174 INFO L290 TraceCheckUtils]: 152: Hoare triple {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {21576#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* 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)) 0))} is VALID [2022-04-27 13:13:36,175 INFO L284 TraceCheckUtils]: 151: Hoare quadruple {21061#true} {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #97#return; {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:13:36,175 INFO L290 TraceCheckUtils]: 150: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,175 INFO L290 TraceCheckUtils]: 149: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,175 INFO L290 TraceCheckUtils]: 148: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,175 INFO L272 TraceCheckUtils]: 147: Hoare triple {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,176 INFO L284 TraceCheckUtils]: 146: Hoare quadruple {21061#true} {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #95#return; {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:13:36,176 INFO L290 TraceCheckUtils]: 145: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,176 INFO L290 TraceCheckUtils]: 144: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,176 INFO L290 TraceCheckUtils]: 143: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,176 INFO L272 TraceCheckUtils]: 142: Hoare triple {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,177 INFO L284 TraceCheckUtils]: 141: Hoare quadruple {21061#true} {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #93#return; {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:13:36,177 INFO L290 TraceCheckUtils]: 140: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,177 INFO L290 TraceCheckUtils]: 139: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,177 INFO L290 TraceCheckUtils]: 138: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,177 INFO L272 TraceCheckUtils]: 137: Hoare triple {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,178 INFO L284 TraceCheckUtils]: 136: Hoare quadruple {21061#true} {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #91#return; {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:13:36,178 INFO L290 TraceCheckUtils]: 135: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,178 INFO L290 TraceCheckUtils]: 134: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,178 INFO L290 TraceCheckUtils]: 133: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,178 INFO L272 TraceCheckUtils]: 132: Hoare triple {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,178 INFO L290 TraceCheckUtils]: 131: Hoare triple {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !false; {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:13:36,341 INFO L290 TraceCheckUtils]: 130: Hoare triple {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21580#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 13:13:36,342 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {21061#true} {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #97#return; {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:13:36,342 INFO L290 TraceCheckUtils]: 128: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,342 INFO L290 TraceCheckUtils]: 127: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,342 INFO L290 TraceCheckUtils]: 126: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,342 INFO L272 TraceCheckUtils]: 125: Hoare triple {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,343 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {21061#true} {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #95#return; {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:13:36,343 INFO L290 TraceCheckUtils]: 123: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,343 INFO L290 TraceCheckUtils]: 122: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,343 INFO L290 TraceCheckUtils]: 121: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,343 INFO L272 TraceCheckUtils]: 120: Hoare triple {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,344 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {21061#true} {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #93#return; {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:13:36,344 INFO L290 TraceCheckUtils]: 118: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,344 INFO L290 TraceCheckUtils]: 117: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,344 INFO L290 TraceCheckUtils]: 116: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,344 INFO L272 TraceCheckUtils]: 115: Hoare triple {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,345 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {21061#true} {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} #91#return; {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:13:36,345 INFO L290 TraceCheckUtils]: 113: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,345 INFO L290 TraceCheckUtils]: 112: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,345 INFO L290 TraceCheckUtils]: 111: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,345 INFO L272 TraceCheckUtils]: 110: Hoare triple {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,346 INFO L290 TraceCheckUtils]: 109: Hoare triple {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} assume !false; {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:13:36,736 INFO L290 TraceCheckUtils]: 108: Hoare triple {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21647#(or (<= (* main_~b~0 2) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 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))))) 0))} is VALID [2022-04-27 13:13:36,737 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {21061#true} {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} #97#return; {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} is VALID [2022-04-27 13:13:36,737 INFO L290 TraceCheckUtils]: 106: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,737 INFO L290 TraceCheckUtils]: 105: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,737 INFO L290 TraceCheckUtils]: 104: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,737 INFO L272 TraceCheckUtils]: 103: Hoare triple {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,738 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {21061#true} {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} #95#return; {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} is VALID [2022-04-27 13:13:36,738 INFO L290 TraceCheckUtils]: 101: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,738 INFO L290 TraceCheckUtils]: 100: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,738 INFO L290 TraceCheckUtils]: 99: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,738 INFO L272 TraceCheckUtils]: 98: Hoare triple {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,739 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {21061#true} {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} #93#return; {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} is VALID [2022-04-27 13:13:36,739 INFO L290 TraceCheckUtils]: 96: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,739 INFO L290 TraceCheckUtils]: 95: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,739 INFO L290 TraceCheckUtils]: 94: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,739 INFO L272 TraceCheckUtils]: 93: Hoare triple {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,740 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {21061#true} {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} #91#return; {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} is VALID [2022-04-27 13:13:36,740 INFO L290 TraceCheckUtils]: 91: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:36,740 INFO L290 TraceCheckUtils]: 90: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:36,740 INFO L290 TraceCheckUtils]: 89: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:36,740 INFO L272 TraceCheckUtils]: 88: Hoare triple {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:36,741 INFO L290 TraceCheckUtils]: 87: Hoare triple {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} assume !false; {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} is VALID [2022-04-27 13:13:36,741 INFO L290 TraceCheckUtils]: 86: Hoare triple {21781#(or (<= (* main_~b~0 3) main_~a~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) 0) (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21714#(or (= (+ (* 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)))) 0) (<= (* main_~b~0 3) main_~c~0) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)))} is VALID [2022-04-27 13:13:36,741 INFO L290 TraceCheckUtils]: 85: Hoare triple {21781#(or (<= (* main_~b~0 3) main_~a~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) 0) (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)))} assume !false; {21781#(or (<= (* main_~b~0 3) main_~a~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) 0) (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)))} is VALID [2022-04-27 13:13:38,744 WARN L290 TraceCheckUtils]: 84: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) 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; {21781#(or (<= (* main_~b~0 3) main_~a~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0)) 0) (not (= (+ (* (- 2) main_~b~0) main_~a~0) 0)))} is UNKNOWN [2022-04-27 13:13:38,744 INFO L290 TraceCheckUtils]: 83: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} assume !(~c~0 >= ~b~0); {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:38,745 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {21061#true} {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} #97#return; {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:38,745 INFO L290 TraceCheckUtils]: 81: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:38,745 INFO L290 TraceCheckUtils]: 80: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:38,745 INFO L290 TraceCheckUtils]: 79: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:38,745 INFO L272 TraceCheckUtils]: 78: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:38,746 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {21061#true} {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} #95#return; {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:38,746 INFO L290 TraceCheckUtils]: 76: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:38,746 INFO L290 TraceCheckUtils]: 75: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:38,746 INFO L290 TraceCheckUtils]: 74: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:38,746 INFO L272 TraceCheckUtils]: 73: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:38,747 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {21061#true} {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} #93#return; {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:38,747 INFO L290 TraceCheckUtils]: 71: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:38,747 INFO L290 TraceCheckUtils]: 70: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:38,747 INFO L290 TraceCheckUtils]: 69: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:38,747 INFO L272 TraceCheckUtils]: 68: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:38,748 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {21061#true} {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} #91#return; {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:38,748 INFO L290 TraceCheckUtils]: 66: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:38,748 INFO L290 TraceCheckUtils]: 65: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:38,748 INFO L290 TraceCheckUtils]: 64: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:38,748 INFO L272 TraceCheckUtils]: 63: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:38,748 INFO L290 TraceCheckUtils]: 62: Hoare triple {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} assume !false; {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:39,457 INFO L290 TraceCheckUtils]: 61: Hoare triple {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21788#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 2) main_~p~0) (* (- 2) (* (- 1) main_~q~0 main_~k~0)))) (* (+ (* (- 2) main_~r~0) main_~s~0 (* (* main_~k~0 main_~s~0) 2)) main_~y~0)) 0) (not (= (+ main_~b~0 (* (- 2) main_~c~0)) 0)) (<= (* main_~c~0 3) main_~b~0))} is VALID [2022-04-27 13:13:39,458 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {21061#true} {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} #97#return; {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} is VALID [2022-04-27 13:13:39,458 INFO L290 TraceCheckUtils]: 59: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,458 INFO L290 TraceCheckUtils]: 58: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,458 INFO L290 TraceCheckUtils]: 57: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,458 INFO L272 TraceCheckUtils]: 56: Hoare triple {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,459 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {21061#true} {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} #95#return; {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} is VALID [2022-04-27 13:13:39,459 INFO L290 TraceCheckUtils]: 54: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,459 INFO L290 TraceCheckUtils]: 53: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,459 INFO L290 TraceCheckUtils]: 52: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,459 INFO L272 TraceCheckUtils]: 51: Hoare triple {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,460 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {21061#true} {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} #93#return; {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} is VALID [2022-04-27 13:13:39,460 INFO L290 TraceCheckUtils]: 49: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,460 INFO L290 TraceCheckUtils]: 48: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,460 INFO L290 TraceCheckUtils]: 47: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,460 INFO L272 TraceCheckUtils]: 46: Hoare triple {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,461 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {21061#true} {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} #91#return; {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} is VALID [2022-04-27 13:13:39,461 INFO L290 TraceCheckUtils]: 44: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,461 INFO L290 TraceCheckUtils]: 43: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,461 INFO L290 TraceCheckUtils]: 42: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,461 INFO L272 TraceCheckUtils]: 41: Hoare triple {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,461 INFO L290 TraceCheckUtils]: 40: Hoare triple {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} assume !false; {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} is VALID [2022-04-27 13:13:39,462 INFO L290 TraceCheckUtils]: 39: Hoare triple {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21858#(or (not (= (+ (* (- 2) main_~c~0) (* main_~b~0 3)) 0)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) main_~s~0 (* (* (+ main_~k~0 1) main_~s~0) 2))) (* (+ (* (- 2) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 2) main_~p~0)) main_~x~0)) 0) (<= (* main_~c~0 3) (* main_~b~0 4)))} is VALID [2022-04-27 13:13:39,462 INFO L290 TraceCheckUtils]: 38: Hoare triple {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} assume !false; {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} is VALID [2022-04-27 13:13:39,463 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {21061#true} {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} #89#return; {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} is VALID [2022-04-27 13:13:39,463 INFO L290 TraceCheckUtils]: 36: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,463 INFO L290 TraceCheckUtils]: 35: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,463 INFO L290 TraceCheckUtils]: 34: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,463 INFO L272 TraceCheckUtils]: 33: Hoare triple {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,464 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {21061#true} {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} #87#return; {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} is VALID [2022-04-27 13:13:39,464 INFO L290 TraceCheckUtils]: 31: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,464 INFO L290 TraceCheckUtils]: 30: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,464 INFO L290 TraceCheckUtils]: 29: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,464 INFO L272 TraceCheckUtils]: 28: Hoare triple {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 27: Hoare triple {21061#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {21925#(or (<= (* main_~a~0 3) (* main_~b~0 4)) (= (+ (* main_~y~0 (+ (* (- 2) main_~r~0) (* main_~s~0 3))) (* main_~x~0 (+ (* (- 2) main_~p~0) (* main_~q~0 3)))) 0) (not (= (+ (* (- 2) main_~a~0) (* main_~b~0 3)) 0)))} is VALID [2022-04-27 13:13:39,465 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {21061#true} {21061#true} #85#return; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 25: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 24: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 23: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L272 TraceCheckUtils]: 22: Hoare triple {21061#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21061#true} {21061#true} #83#return; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 20: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 19: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 18: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L272 TraceCheckUtils]: 17: Hoare triple {21061#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {21061#true} {21061#true} #81#return; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 15: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 14: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 13: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L272 TraceCheckUtils]: 12: Hoare triple {21061#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 11: Hoare triple {21061#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21061#true} {21061#true} #79#return; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 9: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,465 INFO L290 TraceCheckUtils]: 8: Hoare triple {21061#true} assume !(0 == ~cond); {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {21061#true} ~cond := #in~cond; {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {21061#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {21061#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {21061#true} call #t~ret6 := main(); {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21061#true} {21061#true} #103#return; {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L290 TraceCheckUtils]: 2: Hoare triple {21061#true} assume true; {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L290 TraceCheckUtils]: 1: Hoare triple {21061#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); {21061#true} is VALID [2022-04-27 13:13:39,466 INFO L272 TraceCheckUtils]: 0: Hoare triple {21061#true} call ULTIMATE.init(); {21061#true} is VALID [2022-04-27 13:13:39,467 INFO L134 CoverageAnalysis]: Checked inductivity of 927 backedges. 40 proven. 67 refuted. 0 times theorem prover too weak. 820 trivial. 0 not checked. [2022-04-27 13:13:39,467 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:13:39,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [140108260] [2022-04-27 13:13:39,467 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:13:39,467 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [478826981] [2022-04-27 13:13:39,467 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [478826981] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:13:39,467 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:13:39,467 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14] total 25 [2022-04-27 13:13:39,467 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1963691096] [2022-04-27 13:13:39,467 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:13:39,468 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) Word has length 160 [2022-04-27 13:13:39,468 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:13:39,468 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:13:41,245 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:13:41,246 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-27 13:13:41,246 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:13:41,246 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-27 13:13:41,246 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=497, Unknown=0, NotChecked=0, Total=600 [2022-04-27 13:13:41,247 INFO L87 Difference]: Start difference. First operand 410 states and 594 transitions. Second operand has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:15:30,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:30,217 INFO L93 Difference]: Finished difference Result 603 states and 891 transitions. [2022-04-27 13:15:30,217 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 57 states. [2022-04-27 13:15:30,218 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) Word has length 160 [2022-04-27 13:15:30,218 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:15:30,218 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:15:30,227 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 358 transitions. [2022-04-27 13:15:30,227 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:15:30,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 358 transitions. [2022-04-27 13:15:30,235 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 57 states and 358 transitions. [2022-04-27 13:15:35,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 358 edges. 358 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:15:35,823 INFO L225 Difference]: With dead ends: 603 [2022-04-27 13:15:35,823 INFO L226 Difference]: Without dead ends: 595 [2022-04-27 13:15:35,824 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 370 GetRequests, 294 SyntacticMatches, 2 SemanticMatches, 74 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1384 ImplicationChecksByTransitivity, 40.8s TimeCoverageRelationStatistics Valid=1108, Invalid=4592, Unknown=0, NotChecked=0, Total=5700 [2022-04-27 13:15:35,825 INFO L413 NwaCegarLoop]: 142 mSDtfsCounter, 131 mSDsluCounter, 590 mSDsCounter, 0 mSdLazyCounter, 2157 mSolverCounterSat, 462 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 33.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 143 SdHoareTripleChecker+Valid, 732 SdHoareTripleChecker+Invalid, 2619 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 462 IncrementalHoareTripleChecker+Valid, 2157 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 33.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:15:35,826 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [143 Valid, 732 Invalid, 2619 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [462 Valid, 2157 Invalid, 0 Unknown, 0 Unchecked, 33.6s Time] [2022-04-27 13:15:35,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 595 states. [2022-04-27 13:15:37,673 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 595 to 519. [2022-04-27 13:15:37,673 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:15:37,674 INFO L82 GeneralOperation]: Start isEquivalent. First operand 595 states. Second operand has 519 states, 258 states have (on average 1.1744186046511629) internal successors, (303), 260 states have internal predecessors, (303), 229 states have call successors, (229), 32 states have call predecessors, (229), 31 states have return successors, (227), 226 states have call predecessors, (227), 227 states have call successors, (227) [2022-04-27 13:15:37,675 INFO L74 IsIncluded]: Start isIncluded. First operand 595 states. Second operand has 519 states, 258 states have (on average 1.1744186046511629) internal successors, (303), 260 states have internal predecessors, (303), 229 states have call successors, (229), 32 states have call predecessors, (229), 31 states have return successors, (227), 226 states have call predecessors, (227), 227 states have call successors, (227) [2022-04-27 13:15:37,676 INFO L87 Difference]: Start difference. First operand 595 states. Second operand has 519 states, 258 states have (on average 1.1744186046511629) internal successors, (303), 260 states have internal predecessors, (303), 229 states have call successors, (229), 32 states have call predecessors, (229), 31 states have return successors, (227), 226 states have call predecessors, (227), 227 states have call successors, (227) [2022-04-27 13:15:37,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:37,704 INFO L93 Difference]: Finished difference Result 595 states and 880 transitions. [2022-04-27 13:15:37,704 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 880 transitions. [2022-04-27 13:15:37,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:37,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:37,708 INFO L74 IsIncluded]: Start isIncluded. First operand has 519 states, 258 states have (on average 1.1744186046511629) internal successors, (303), 260 states have internal predecessors, (303), 229 states have call successors, (229), 32 states have call predecessors, (229), 31 states have return successors, (227), 226 states have call predecessors, (227), 227 states have call successors, (227) Second operand 595 states. [2022-04-27 13:15:37,708 INFO L87 Difference]: Start difference. First operand has 519 states, 258 states have (on average 1.1744186046511629) internal successors, (303), 260 states have internal predecessors, (303), 229 states have call successors, (229), 32 states have call predecessors, (229), 31 states have return successors, (227), 226 states have call predecessors, (227), 227 states have call successors, (227) Second operand 595 states. [2022-04-27 13:15:37,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:37,738 INFO L93 Difference]: Finished difference Result 595 states and 880 transitions. [2022-04-27 13:15:37,739 INFO L276 IsEmpty]: Start isEmpty. Operand 595 states and 880 transitions. [2022-04-27 13:15:37,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:37,741 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:37,741 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:15:37,741 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:15:37,742 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 519 states, 258 states have (on average 1.1744186046511629) internal successors, (303), 260 states have internal predecessors, (303), 229 states have call successors, (229), 32 states have call predecessors, (229), 31 states have return successors, (227), 226 states have call predecessors, (227), 227 states have call successors, (227) [2022-04-27 13:15:37,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 519 states to 519 states and 759 transitions. [2022-04-27 13:15:37,767 INFO L78 Accepts]: Start accepts. Automaton has 519 states and 759 transitions. Word has length 160 [2022-04-27 13:15:37,767 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:15:37,767 INFO L495 AbstractCegarLoop]: Abstraction has 519 states and 759 transitions. [2022-04-27 13:15:37,768 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 23 states have (on average 2.217391304347826) internal successors, (51), 24 states have internal predecessors, (51), 15 states have call successors, (52), 2 states have call predecessors, (52), 1 states have return successors, (49), 13 states have call predecessors, (49), 13 states have call successors, (49) [2022-04-27 13:15:37,768 INFO L276 IsEmpty]: Start isEmpty. Operand 519 states and 759 transitions. [2022-04-27 13:15:37,771 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 180 [2022-04-27 13:15:37,771 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:15:37,771 INFO L195 NwaCegarLoop]: trace histogram [24, 23, 23, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 4, 4, 3, 3, 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-27 13:15:37,795 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-27 13:15:37,985 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-27 13:15:37,985 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:15:37,986 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:15:37,986 INFO L85 PathProgramCache]: Analyzing trace with hash 661049022, now seen corresponding path program 2 times [2022-04-27 13:15:37,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:15:37,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1320473203] [2022-04-27 13:15:37,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:15:37,986 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:15:38,009 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:15:38,009 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [345024497] [2022-04-27 13:15:38,009 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:15:38,009 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:15:38,009 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:15:38,014 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-27 13:15:38,042 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-27 13:15:38,770 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:15:38,770 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:15:38,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 422 conjuncts, 83 conjunts are in the unsatisfiable core [2022-04-27 13:15:38,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:15:38,806 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:15:42,222 INFO L272 TraceCheckUtils]: 0: Hoare triple {25179#true} call ULTIMATE.init(); {25179#true} is VALID [2022-04-27 13:15:42,222 INFO L290 TraceCheckUtils]: 1: Hoare triple {25179#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); {25179#true} is VALID [2022-04-27 13:15:42,222 INFO L290 TraceCheckUtils]: 2: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,222 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25179#true} {25179#true} #103#return; {25179#true} is VALID [2022-04-27 13:15:42,222 INFO L272 TraceCheckUtils]: 4: Hoare triple {25179#true} call #t~ret6 := main(); {25179#true} is VALID [2022-04-27 13:15:42,222 INFO L290 TraceCheckUtils]: 5: Hoare triple {25179#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {25179#true} is VALID [2022-04-27 13:15:42,222 INFO L272 TraceCheckUtils]: 6: Hoare triple {25179#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 7: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 8: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 9: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25179#true} {25179#true} #79#return; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 11: Hoare triple {25179#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L272 TraceCheckUtils]: 12: Hoare triple {25179#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 13: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 14: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 15: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {25179#true} {25179#true} #81#return; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L272 TraceCheckUtils]: 17: Hoare triple {25179#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 19: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 20: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {25179#true} {25179#true} #83#return; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L272 TraceCheckUtils]: 22: Hoare triple {25179#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 24: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,223 INFO L290 TraceCheckUtils]: 25: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,224 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {25179#true} {25179#true} #85#return; {25179#true} is VALID [2022-04-27 13:15:42,226 INFO L290 TraceCheckUtils]: 27: Hoare triple {25179#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,226 INFO L272 TraceCheckUtils]: 28: Hoare triple {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,226 INFO L290 TraceCheckUtils]: 29: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,226 INFO L290 TraceCheckUtils]: 30: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,226 INFO L290 TraceCheckUtils]: 31: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,227 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {25179#true} {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #87#return; {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,227 INFO L272 TraceCheckUtils]: 33: Hoare triple {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,227 INFO L290 TraceCheckUtils]: 34: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,227 INFO L290 TraceCheckUtils]: 35: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,227 INFO L290 TraceCheckUtils]: 36: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,228 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25179#true} {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #89#return; {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,228 INFO L290 TraceCheckUtils]: 38: Hoare triple {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !false; {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,229 INFO L290 TraceCheckUtils]: 39: Hoare triple {25265#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,229 INFO L290 TraceCheckUtils]: 40: Hoare triple {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,229 INFO L272 TraceCheckUtils]: 41: Hoare triple {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {25179#true} is VALID [2022-04-27 13:15:42,229 INFO L290 TraceCheckUtils]: 42: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,229 INFO L290 TraceCheckUtils]: 43: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,229 INFO L290 TraceCheckUtils]: 44: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,230 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {25179#true} {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,230 INFO L272 TraceCheckUtils]: 46: Hoare triple {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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)); {25179#true} is VALID [2022-04-27 13:15:42,230 INFO L290 TraceCheckUtils]: 47: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,230 INFO L290 TraceCheckUtils]: 48: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,230 INFO L290 TraceCheckUtils]: 49: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,231 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {25179#true} {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,231 INFO L272 TraceCheckUtils]: 51: Hoare triple {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~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)); {25179#true} is VALID [2022-04-27 13:15:42,231 INFO L290 TraceCheckUtils]: 52: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,231 INFO L290 TraceCheckUtils]: 53: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,231 INFO L290 TraceCheckUtils]: 54: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,232 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25179#true} {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,232 INFO L272 TraceCheckUtils]: 56: Hoare triple {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,232 INFO L290 TraceCheckUtils]: 57: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,232 INFO L290 TraceCheckUtils]: 58: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,232 INFO L290 TraceCheckUtils]: 59: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,233 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25179#true} {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,233 INFO L290 TraceCheckUtils]: 61: Hoare triple {25302#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {25369#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,234 INFO L290 TraceCheckUtils]: 62: Hoare triple {25369#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~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; {25373#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,234 INFO L290 TraceCheckUtils]: 63: Hoare triple {25373#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {25373#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,235 INFO L290 TraceCheckUtils]: 64: Hoare triple {25373#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,235 INFO L290 TraceCheckUtils]: 65: Hoare triple {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} assume !false; {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,235 INFO L272 TraceCheckUtils]: 66: Hoare triple {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,235 INFO L290 TraceCheckUtils]: 67: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,235 INFO L290 TraceCheckUtils]: 68: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,235 INFO L290 TraceCheckUtils]: 69: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,236 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {25179#true} {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} #91#return; {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,236 INFO L272 TraceCheckUtils]: 71: Hoare triple {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (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)); {25179#true} is VALID [2022-04-27 13:15:42,236 INFO L290 TraceCheckUtils]: 72: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,236 INFO L290 TraceCheckUtils]: 73: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,236 INFO L290 TraceCheckUtils]: 74: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,237 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {25179#true} {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} #93#return; {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,237 INFO L272 TraceCheckUtils]: 76: Hoare triple {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (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)); {25179#true} is VALID [2022-04-27 13:15:42,237 INFO L290 TraceCheckUtils]: 77: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,237 INFO L290 TraceCheckUtils]: 78: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,237 INFO L290 TraceCheckUtils]: 79: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,238 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {25179#true} {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} #95#return; {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,238 INFO L272 TraceCheckUtils]: 81: Hoare triple {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,238 INFO L290 TraceCheckUtils]: 82: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,238 INFO L290 TraceCheckUtils]: 83: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,238 INFO L290 TraceCheckUtils]: 84: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,239 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {25179#true} {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} #97#return; {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,239 INFO L290 TraceCheckUtils]: 86: Hoare triple {25380#(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) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (not (<= main_~c~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,240 INFO L290 TraceCheckUtils]: 87: Hoare triple {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,240 INFO L272 TraceCheckUtils]: 88: Hoare triple {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,240 INFO L290 TraceCheckUtils]: 89: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,240 INFO L290 TraceCheckUtils]: 90: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,240 INFO L290 TraceCheckUtils]: 91: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,241 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {25179#true} {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,241 INFO L272 TraceCheckUtils]: 93: Hoare triple {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,241 INFO L290 TraceCheckUtils]: 94: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,241 INFO L290 TraceCheckUtils]: 95: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,241 INFO L290 TraceCheckUtils]: 96: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,242 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {25179#true} {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,242 INFO L272 TraceCheckUtils]: 98: Hoare triple {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,242 INFO L290 TraceCheckUtils]: 99: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,242 INFO L290 TraceCheckUtils]: 100: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,242 INFO L290 TraceCheckUtils]: 101: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,243 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {25179#true} {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,243 INFO L272 TraceCheckUtils]: 103: Hoare triple {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,243 INFO L290 TraceCheckUtils]: 104: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,243 INFO L290 TraceCheckUtils]: 105: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,243 INFO L290 TraceCheckUtils]: 106: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,244 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {25179#true} {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #97#return; {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,244 INFO L290 TraceCheckUtils]: 108: Hoare triple {25447#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {25514#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= main_~b~0 main_~c~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,246 INFO L290 TraceCheckUtils]: 109: Hoare triple {25514#(and (= (+ main_~y~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~s~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (not (<= main_~b~0 main_~c~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~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; {25518#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,247 INFO L290 TraceCheckUtils]: 110: Hoare triple {25518#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {25518#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,247 INFO L290 TraceCheckUtils]: 111: Hoare triple {25518#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,248 INFO L290 TraceCheckUtils]: 112: Hoare triple {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,248 INFO L272 TraceCheckUtils]: 113: Hoare triple {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~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)); {25179#true} is VALID [2022-04-27 13:15:42,248 INFO L290 TraceCheckUtils]: 114: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,248 INFO L290 TraceCheckUtils]: 115: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,248 INFO L290 TraceCheckUtils]: 116: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,249 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {25179#true} {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,249 INFO L272 TraceCheckUtils]: 118: Hoare triple {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~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)); {25179#true} is VALID [2022-04-27 13:15:42,249 INFO L290 TraceCheckUtils]: 119: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,249 INFO L290 TraceCheckUtils]: 120: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,249 INFO L290 TraceCheckUtils]: 121: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,250 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {25179#true} {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,250 INFO L272 TraceCheckUtils]: 123: Hoare triple {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~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)); {25179#true} is VALID [2022-04-27 13:15:42,250 INFO L290 TraceCheckUtils]: 124: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,250 INFO L290 TraceCheckUtils]: 125: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,250 INFO L290 TraceCheckUtils]: 126: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,250 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {25179#true} {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,251 INFO L272 TraceCheckUtils]: 128: Hoare triple {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,251 INFO L290 TraceCheckUtils]: 129: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,251 INFO L290 TraceCheckUtils]: 130: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,251 INFO L290 TraceCheckUtils]: 131: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,251 INFO L284 TraceCheckUtils]: 132: Hoare quadruple {25179#true} {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,252 INFO L290 TraceCheckUtils]: 133: Hoare triple {25525#(and (= main_~r~0 0) (not (<= main_~y~0 main_~x~0)) (= main_~k~0 0) (= main_~s~0 1) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,253 INFO L290 TraceCheckUtils]: 134: Hoare triple {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !false; {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,253 INFO L272 TraceCheckUtils]: 135: Hoare triple {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,253 INFO L290 TraceCheckUtils]: 136: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,253 INFO L290 TraceCheckUtils]: 137: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,253 INFO L290 TraceCheckUtils]: 138: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,254 INFO L284 TraceCheckUtils]: 139: Hoare quadruple {25179#true} {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #91#return; {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,254 INFO L272 TraceCheckUtils]: 140: Hoare triple {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~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)); {25179#true} is VALID [2022-04-27 13:15:42,254 INFO L290 TraceCheckUtils]: 141: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,254 INFO L290 TraceCheckUtils]: 142: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,254 INFO L290 TraceCheckUtils]: 143: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,255 INFO L284 TraceCheckUtils]: 144: Hoare quadruple {25179#true} {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #93#return; {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,255 INFO L272 TraceCheckUtils]: 145: Hoare triple {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,255 INFO L290 TraceCheckUtils]: 146: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,255 INFO L290 TraceCheckUtils]: 147: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,255 INFO L290 TraceCheckUtils]: 148: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,256 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {25179#true} {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #95#return; {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,256 INFO L272 TraceCheckUtils]: 150: Hoare triple {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,256 INFO L290 TraceCheckUtils]: 151: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,256 INFO L290 TraceCheckUtils]: 152: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,256 INFO L290 TraceCheckUtils]: 153: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,256 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {25179#true} {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #97#return; {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,258 INFO L290 TraceCheckUtils]: 155: Hoare triple {25592#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (not (<= main_~y~0 main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (not (<= (* main_~x~0 2) main_~y~0)) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {25659#(and (< (* main_~c~0 2) main_~x~0) (= main_~r~0 0) (< main_~y~0 (* main_~x~0 2)) (= (* main_~x~0 2) (+ main_~c~0 main_~y~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:15:42,259 INFO L290 TraceCheckUtils]: 156: Hoare triple {25659#(and (< (* main_~c~0 2) main_~x~0) (= main_~r~0 0) (< main_~y~0 (* main_~x~0 2)) (= (* main_~x~0 2) (+ main_~c~0 main_~y~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= (+ main_~q~0 main_~p~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; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,259 INFO L290 TraceCheckUtils]: 157: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,260 INFO L290 TraceCheckUtils]: 158: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,260 INFO L290 TraceCheckUtils]: 159: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,260 INFO L272 TraceCheckUtils]: 160: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,260 INFO L290 TraceCheckUtils]: 161: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,260 INFO L290 TraceCheckUtils]: 162: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,261 INFO L290 TraceCheckUtils]: 163: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,261 INFO L284 TraceCheckUtils]: 164: Hoare quadruple {25179#true} {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,261 INFO L272 TraceCheckUtils]: 165: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,261 INFO L290 TraceCheckUtils]: 166: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:15:42,261 INFO L290 TraceCheckUtils]: 167: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:15:42,261 INFO L290 TraceCheckUtils]: 168: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:15:42,262 INFO L284 TraceCheckUtils]: 169: Hoare quadruple {25179#true} {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,262 INFO L272 TraceCheckUtils]: 170: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:15:42,262 INFO L290 TraceCheckUtils]: 171: Hoare triple {25179#true} ~cond := #in~cond; {25709#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:15:42,263 INFO L290 TraceCheckUtils]: 172: Hoare triple {25709#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:42,263 INFO L290 TraceCheckUtils]: 173: Hoare triple {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:15:42,264 INFO L284 TraceCheckUtils]: 174: Hoare quadruple {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:15:42,265 INFO L272 TraceCheckUtils]: 175: Hoare triple {25663#(and (< main_~y~0 (* main_~x~0 2)) (< (* main_~x~0 3) (* main_~y~0 2)) (= (+ (- 1) main_~q~0) 1) (= main_~b~0 (+ (* main_~x~0 2) (* (- 1) main_~y~0))) (= (+ (- 1) main_~q~0 main_~s~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25723#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:15:42,266 INFO L290 TraceCheckUtils]: 176: Hoare triple {25723#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25727#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:15:42,266 INFO L290 TraceCheckUtils]: 177: Hoare triple {25727#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25180#false} is VALID [2022-04-27 13:15:42,266 INFO L290 TraceCheckUtils]: 178: Hoare triple {25180#false} assume !false; {25180#false} is VALID [2022-04-27 13:15:42,267 INFO L134 CoverageAnalysis]: Checked inductivity of 1218 backedges. 111 proven. 101 refuted. 0 times theorem prover too weak. 1006 trivial. 0 not checked. [2022-04-27 13:15:42,267 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:16:29,292 INFO L290 TraceCheckUtils]: 178: Hoare triple {25180#false} assume !false; {25180#false} is VALID [2022-04-27 13:16:29,293 INFO L290 TraceCheckUtils]: 177: Hoare triple {25727#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {25180#false} is VALID [2022-04-27 13:16:29,293 INFO L290 TraceCheckUtils]: 176: Hoare triple {25723#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {25727#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:16:29,294 INFO L272 TraceCheckUtils]: 175: Hoare triple {25743#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25723#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:16:29,295 INFO L284 TraceCheckUtils]: 174: Hoare quadruple {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #95#return; {25743#(= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0)))} is VALID [2022-04-27 13:16:29,295 INFO L290 TraceCheckUtils]: 173: Hoare triple {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:29,295 INFO L290 TraceCheckUtils]: 172: Hoare triple {25757#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {25713#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:16:29,295 INFO L290 TraceCheckUtils]: 171: Hoare triple {25179#true} ~cond := #in~cond; {25757#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:16:29,296 INFO L272 TraceCheckUtils]: 170: Hoare triple {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {25179#true} is VALID [2022-04-27 13:16:29,296 INFO L284 TraceCheckUtils]: 169: Hoare quadruple {25179#true} {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #93#return; {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:16:29,296 INFO L290 TraceCheckUtils]: 168: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:29,296 INFO L290 TraceCheckUtils]: 167: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:29,296 INFO L290 TraceCheckUtils]: 166: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:29,296 INFO L272 TraceCheckUtils]: 165: Hoare triple {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {25179#true} is VALID [2022-04-27 13:16:29,297 INFO L284 TraceCheckUtils]: 164: Hoare quadruple {25179#true} {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #91#return; {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:16:29,297 INFO L290 TraceCheckUtils]: 163: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:29,297 INFO L290 TraceCheckUtils]: 162: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:29,297 INFO L290 TraceCheckUtils]: 161: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:29,297 INFO L272 TraceCheckUtils]: 160: Hoare triple {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~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)); {25179#true} is VALID [2022-04-27 13:16:29,298 INFO L290 TraceCheckUtils]: 159: Hoare triple {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:16:29,298 INFO L290 TraceCheckUtils]: 158: Hoare triple {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:16:29,298 INFO L290 TraceCheckUtils]: 157: Hoare triple {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !false; {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:16:31,301 WARN L290 TraceCheckUtils]: 156: Hoare triple {25803#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* 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; {25747#(or (= (+ (* main_~b~0 main_~y~0) (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~s~0 main_~yy~0) main_~b~0 (* main_~q~0 main_~xy~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is UNKNOWN [2022-04-27 13:16:31,302 INFO L290 TraceCheckUtils]: 155: Hoare triple {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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); {25803#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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))) (not (= (+ (* (+ (* (* 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-27 13:16:31,302 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {25179#true} {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #97#return; {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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-27 13:16:31,302 INFO L290 TraceCheckUtils]: 153: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,302 INFO L290 TraceCheckUtils]: 152: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,303 INFO L290 TraceCheckUtils]: 151: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,303 INFO L272 TraceCheckUtils]: 150: Hoare triple {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,303 INFO L284 TraceCheckUtils]: 149: Hoare quadruple {25179#true} {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #95#return; {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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-27 13:16:31,303 INFO L290 TraceCheckUtils]: 148: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,303 INFO L290 TraceCheckUtils]: 147: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,303 INFO L290 TraceCheckUtils]: 146: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,304 INFO L272 TraceCheckUtils]: 145: Hoare triple {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,304 INFO L284 TraceCheckUtils]: 144: Hoare quadruple {25179#true} {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #93#return; {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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-27 13:16:31,304 INFO L290 TraceCheckUtils]: 143: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,304 INFO L290 TraceCheckUtils]: 142: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,304 INFO L290 TraceCheckUtils]: 141: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,305 INFO L272 TraceCheckUtils]: 140: Hoare triple {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,305 INFO L284 TraceCheckUtils]: 139: Hoare quadruple {25179#true} {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} #91#return; {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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-27 13:16:31,305 INFO L290 TraceCheckUtils]: 138: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,305 INFO L290 TraceCheckUtils]: 137: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,305 INFO L290 TraceCheckUtils]: 136: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,305 INFO L272 TraceCheckUtils]: 135: Hoare triple {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,306 INFO L290 TraceCheckUtils]: 134: Hoare triple {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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; {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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-27 13:16:31,336 INFO L290 TraceCheckUtils]: 133: Hoare triple {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25807#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0) (* (+ 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) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~y~0) (* (+ (* (* 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_~b~0 main_~c~0) (not (= (+ (* (+ (* (* 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-27 13:16:31,337 INFO L284 TraceCheckUtils]: 132: Hoare quadruple {25179#true} {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} #97#return; {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} is VALID [2022-04-27 13:16:31,337 INFO L290 TraceCheckUtils]: 131: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,337 INFO L290 TraceCheckUtils]: 130: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,337 INFO L290 TraceCheckUtils]: 129: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,338 INFO L272 TraceCheckUtils]: 128: Hoare triple {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,338 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {25179#true} {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} #95#return; {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} is VALID [2022-04-27 13:16:31,338 INFO L290 TraceCheckUtils]: 126: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,338 INFO L290 TraceCheckUtils]: 125: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,338 INFO L290 TraceCheckUtils]: 124: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,338 INFO L272 TraceCheckUtils]: 123: Hoare triple {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,339 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {25179#true} {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} #93#return; {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} is VALID [2022-04-27 13:16:31,339 INFO L290 TraceCheckUtils]: 121: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,339 INFO L290 TraceCheckUtils]: 120: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,339 INFO L290 TraceCheckUtils]: 119: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,339 INFO L272 TraceCheckUtils]: 118: Hoare triple {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,340 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {25179#true} {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} #91#return; {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} is VALID [2022-04-27 13:16:31,340 INFO L290 TraceCheckUtils]: 116: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:31,340 INFO L290 TraceCheckUtils]: 115: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:31,340 INFO L290 TraceCheckUtils]: 114: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:31,340 INFO L272 TraceCheckUtils]: 113: Hoare triple {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:31,341 INFO L290 TraceCheckUtils]: 112: Hoare triple {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} assume !false; {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} is VALID [2022-04-27 13:16:31,342 INFO L290 TraceCheckUtils]: 111: Hoare triple {25941#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25874#(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_~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_~y~0)) (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~xy~0) (* (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))) main_~yy~0) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))))) (not (= (+ (* 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)))))} is VALID [2022-04-27 13:16:31,343 INFO L290 TraceCheckUtils]: 110: Hoare triple {25941#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !false; {25941#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:16:33,346 WARN L290 TraceCheckUtils]: 109: Hoare triple {25948#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~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; {25941#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~yy~0) (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* main_~xy~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0))) (* (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~y~0))) (not (= (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~a~0)) (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is UNKNOWN [2022-04-27 13:16:33,347 INFO L290 TraceCheckUtils]: 108: Hoare triple {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {25948#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:33,348 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {25179#true} {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} #97#return; {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:33,348 INFO L290 TraceCheckUtils]: 106: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:33,348 INFO L290 TraceCheckUtils]: 105: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:33,348 INFO L290 TraceCheckUtils]: 104: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:33,348 INFO L272 TraceCheckUtils]: 103: Hoare triple {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:33,349 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {25179#true} {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} #95#return; {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:33,349 INFO L290 TraceCheckUtils]: 101: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:33,349 INFO L290 TraceCheckUtils]: 100: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:33,349 INFO L290 TraceCheckUtils]: 99: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:33,349 INFO L272 TraceCheckUtils]: 98: Hoare triple {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~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)); {25179#true} is VALID [2022-04-27 13:16:33,350 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {25179#true} {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} #93#return; {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:33,350 INFO L290 TraceCheckUtils]: 96: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:33,350 INFO L290 TraceCheckUtils]: 95: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:33,350 INFO L290 TraceCheckUtils]: 94: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:33,350 INFO L272 TraceCheckUtils]: 93: Hoare triple {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~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)); {25179#true} is VALID [2022-04-27 13:16:33,351 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {25179#true} {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} #91#return; {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:33,351 INFO L290 TraceCheckUtils]: 91: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:33,351 INFO L290 TraceCheckUtils]: 90: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:33,351 INFO L290 TraceCheckUtils]: 89: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:33,351 INFO L272 TraceCheckUtils]: 88: Hoare triple {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~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)); {25179#true} is VALID [2022-04-27 13:16:33,352 INFO L290 TraceCheckUtils]: 87: Hoare triple {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !false; {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:34,064 INFO L290 TraceCheckUtils]: 86: Hoare triple {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {25952#(or (= (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~xy~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0)) main_~y~0) (* (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0))) (not (= main_~b~0 (+ (* (- 1) (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:16:34,065 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {25179#true} {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} #97#return; {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-27 13:16:34,065 INFO L290 TraceCheckUtils]: 84: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:34,066 INFO L290 TraceCheckUtils]: 83: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:34,066 INFO L290 TraceCheckUtils]: 82: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:34,066 INFO L272 TraceCheckUtils]: 81: Hoare triple {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:34,067 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {25179#true} {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} #95#return; {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-27 13:16:34,067 INFO L290 TraceCheckUtils]: 79: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:34,067 INFO L290 TraceCheckUtils]: 78: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:34,067 INFO L290 TraceCheckUtils]: 77: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:34,067 INFO L272 TraceCheckUtils]: 76: Hoare triple {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:34,068 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {25179#true} {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} #93#return; {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-27 13:16:34,068 INFO L290 TraceCheckUtils]: 74: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:34,068 INFO L290 TraceCheckUtils]: 73: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:34,068 INFO L290 TraceCheckUtils]: 72: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:34,068 INFO L272 TraceCheckUtils]: 71: Hoare triple {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:34,069 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {25179#true} {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} #91#return; {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-27 13:16:34,069 INFO L290 TraceCheckUtils]: 69: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:34,069 INFO L290 TraceCheckUtils]: 68: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:34,069 INFO L290 TraceCheckUtils]: 67: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:34,069 INFO L272 TraceCheckUtils]: 66: Hoare triple {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:34,071 INFO L290 TraceCheckUtils]: 65: Hoare triple {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} assume !false; {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-27 13:16:34,072 INFO L290 TraceCheckUtils]: 64: Hoare triple {26086#(or (<= (+ (* main_~y~0 main_~r~0) main_~a~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) main_~b~0)) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~y~0 main_~s~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~b~0)) (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~xy~0) (* main_~yy~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) main_~y~0) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))))) (<= (* main_~b~0 2) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {26019#(or (<= (* main_~b~0 2) main_~c~0) (<= (+ (* main_~y~0 main_~r~0) main_~c~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) (* main_~k~0 main_~y~0 main_~s~0) main_~b~0 (* main_~q~0 main_~k~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* (- 1) main_~b~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 main_~s~0) (* (- 1) main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))))) (= (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~y~0 (+ (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)))) (+ (* (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~yy~0) (* main_~y~0 (+ (* (+ main_~k~0 1) main_~s~0) main_~s~0 (* (- 1) main_~r~0))) (* main_~x~0 (+ (* (- 1) (* (- 1) (+ main_~k~0 1) main_~q~0)) main_~q~0 (* (- 1) main_~p~0))))))} is VALID [2022-04-27 13:16:34,073 INFO L290 TraceCheckUtils]: 63: Hoare triple {26086#(or (<= (+ (* main_~y~0 main_~r~0) main_~a~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) main_~b~0)) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~y~0 main_~s~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~b~0)) (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~xy~0) (* main_~yy~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) main_~y~0) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))))) (<= (* main_~b~0 2) main_~a~0))} assume !false; {26086#(or (<= (+ (* main_~y~0 main_~r~0) main_~a~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) main_~b~0)) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~y~0 main_~s~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~b~0)) (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~xy~0) (* main_~yy~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) main_~y~0) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))))) (<= (* main_~b~0 2) main_~a~0))} is VALID [2022-04-27 13:16:36,079 WARN L290 TraceCheckUtils]: 62: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~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; {26086#(or (<= (+ (* main_~y~0 main_~r~0) main_~a~0 (* main_~p~0 main_~x~0)) (+ (* 2 (* main_~y~0 main_~s~0)) (* (* main_~q~0 main_~x~0) 2) main_~b~0)) (not (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* (- 1) main_~b~0) (* (- 1) (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~y~0 main_~s~0) (* (- 1) main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) main_~b~0)) (= (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~xy~0) (* main_~yy~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) (+ (* (+ (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0)))) main_~y~0) (* (+ (* main_~q~0 2) (* (- 1) main_~p~0)) main_~x~0) (* main_~y~0 (+ (* main_~s~0 2) (* (- 1) main_~r~0))))) (<= (* main_~b~0 2) main_~a~0))} is UNKNOWN [2022-04-27 13:16:36,081 INFO L290 TraceCheckUtils]: 61: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} assume !(~c~0 >= ~b~0); {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,081 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {25179#true} {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #97#return; {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,081 INFO L290 TraceCheckUtils]: 59: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,081 INFO L290 TraceCheckUtils]: 58: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,082 INFO L290 TraceCheckUtils]: 57: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,082 INFO L272 TraceCheckUtils]: 56: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,082 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {25179#true} {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #95#return; {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,082 INFO L290 TraceCheckUtils]: 54: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,082 INFO L290 TraceCheckUtils]: 53: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,083 INFO L290 TraceCheckUtils]: 52: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,083 INFO L272 TraceCheckUtils]: 51: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,083 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {25179#true} {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #93#return; {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,083 INFO L290 TraceCheckUtils]: 49: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,084 INFO L290 TraceCheckUtils]: 48: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,084 INFO L290 TraceCheckUtils]: 47: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,084 INFO L272 TraceCheckUtils]: 46: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,084 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {25179#true} {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} #91#return; {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,084 INFO L290 TraceCheckUtils]: 44: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,085 INFO L290 TraceCheckUtils]: 43: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,085 INFO L290 TraceCheckUtils]: 42: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,085 INFO L272 TraceCheckUtils]: 41: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,086 INFO L290 TraceCheckUtils]: 40: Hoare triple {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} assume !false; {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,087 INFO L290 TraceCheckUtils]: 39: Hoare triple {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {26093#(or (<= (* main_~c~0 2) main_~b~0) (= (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~yy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0)) (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* main_~y~0 (+ (* (+ (* (- 1) main_~s~0) (* main_~r~0 2) (* (* main_~k~0 main_~s~0) (- 2))) main_~y~0) (* (+ (* 2 (* (- 1) main_~q~0 main_~k~0)) (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0))))) (<= (+ (* main_~q~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_~y~0 main_~s~0)) (+ main_~c~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (not (= (+ (* (- 1) main_~c~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (- 1) (+ (* main_~k~0 main_~s~0) main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)))} is VALID [2022-04-27 13:16:36,087 INFO L290 TraceCheckUtils]: 38: Hoare triple {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} assume !false; {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-27 13:16:36,088 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {25179#true} {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} #89#return; {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-27 13:16:36,088 INFO L290 TraceCheckUtils]: 36: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,088 INFO L290 TraceCheckUtils]: 35: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,088 INFO L290 TraceCheckUtils]: 34: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,088 INFO L272 TraceCheckUtils]: 33: Hoare triple {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,089 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {25179#true} {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} #87#return; {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-27 13:16:36,089 INFO L290 TraceCheckUtils]: 31: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,089 INFO L290 TraceCheckUtils]: 30: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,089 INFO L290 TraceCheckUtils]: 29: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,089 INFO L272 TraceCheckUtils]: 28: Hoare triple {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 27: Hoare triple {25179#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {26163#(or (<= (+ (* main_~q~0 main_~x~0) main_~b~0 (* main_~y~0 main_~s~0)) (+ main_~a~0 (* (* main_~y~0 main_~r~0) 2) (* 2 (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~xy~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~yy~0) (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (+ (* main_~p~0 2) (* (- 1) main_~q~0)) main_~x~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0)) main_~y~0) (* (+ (* (- 1) main_~s~0) (* main_~r~0 2)) main_~y~0))) (<= (* main_~a~0 2) main_~b~0) (not (= main_~a~0 (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) (- 1) main_~y~0) (* (- 1) main_~a~0) (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0) (* (- 1) main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0)))))))} is VALID [2022-04-27 13:16:36,091 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {25179#true} {25179#true} #85#return; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 25: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 24: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 23: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L272 TraceCheckUtils]: 22: Hoare triple {25179#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {25179#true} {25179#true} #83#return; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 20: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 19: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 18: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L272 TraceCheckUtils]: 17: Hoare triple {25179#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {25179#true} {25179#true} #81#return; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 15: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 14: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 13: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L272 TraceCheckUtils]: 12: Hoare triple {25179#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 50 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L290 TraceCheckUtils]: 11: Hoare triple {25179#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25179#true} is VALID [2022-04-27 13:16:36,091 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {25179#true} {25179#true} #79#return; {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L290 TraceCheckUtils]: 9: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L290 TraceCheckUtils]: 8: Hoare triple {25179#true} assume !(0 == ~cond); {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L290 TraceCheckUtils]: 7: Hoare triple {25179#true} ~cond := #in~cond; {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L272 TraceCheckUtils]: 6: Hoare triple {25179#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 50 then 1 else 0)); {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L290 TraceCheckUtils]: 5: Hoare triple {25179#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;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4; {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L272 TraceCheckUtils]: 4: Hoare triple {25179#true} call #t~ret6 := main(); {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25179#true} {25179#true} #103#return; {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {25179#true} assume true; {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {25179#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); {25179#true} is VALID [2022-04-27 13:16:36,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {25179#true} call ULTIMATE.init(); {25179#true} is VALID [2022-04-27 13:16:36,093 INFO L134 CoverageAnalysis]: Checked inductivity of 1218 backedges. 117 proven. 95 refuted. 0 times theorem prover too weak. 1006 trivial. 0 not checked. [2022-04-27 13:16:36,093 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:16:36,093 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1320473203] [2022-04-27 13:16:36,093 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:16:36,093 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [345024497] [2022-04-27 13:16:36,093 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [345024497] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:16:36,093 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:16:36,093 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 31 [2022-04-27 13:16:36,094 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1103418406] [2022-04-27 13:16:36,094 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:16:36,094 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 30 states have (on average 2.1333333333333333) internal successors, (64), 29 states have internal predecessors, (64), 16 states have call successors, (58), 2 states have call predecessors, (58), 2 states have return successors, (55), 16 states have call predecessors, (55), 15 states have call successors, (55) Word has length 179 [2022-04-27 13:16:36,095 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:16:36,095 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 31 states, 30 states have (on average 2.1333333333333333) internal successors, (64), 29 states have internal predecessors, (64), 16 states have call successors, (58), 2 states have call predecessors, (58), 2 states have return successors, (55), 16 states have call predecessors, (55), 15 states have call successors, (55) [2022-04-27 13:16:43,853 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 174 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-27 13:16:43,853 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-04-27 13:16:43,853 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:16:43,854 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-04-27 13:16:43,854 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=212, Invalid=718, Unknown=0, NotChecked=0, Total=930 [2022-04-27 13:16:43,854 INFO L87 Difference]: Start difference. First operand 519 states and 759 transitions. Second operand has 31 states, 30 states have (on average 2.1333333333333333) internal successors, (64), 29 states have internal predecessors, (64), 16 states have call successors, (58), 2 states have call predecessors, (58), 2 states have return successors, (55), 16 states have call predecessors, (55), 15 states have call successors, (55) [2022-04-27 13:16:48,551 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.96s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers []