/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_valuebound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:02:07,026 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:02:07,028 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:02:07,054 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:02:07,058 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:02:07,059 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:02:07,064 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:02:07,068 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:02:07,069 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:02:07,073 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:02:07,074 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:02:07,075 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:02:07,075 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:02:07,077 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:02:07,077 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:02:07,078 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:02:07,079 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:02:07,079 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:02:07,082 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:02:07,087 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:02:07,089 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:02:07,091 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:02:07,091 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:02:07,092 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:02:07,093 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:02:07,098 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:02:07,099 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:02:07,099 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:02:07,100 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:02:07,100 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:02:07,101 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:02:07,101 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:02:07,103 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:02:07,103 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:02:07,104 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:02:07,104 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:02:07,104 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:02:07,105 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:02:07,105 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:02:07,105 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:02:07,105 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:02:07,107 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:02:07,107 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:07,135 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:02:07,135 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:02:07,135 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:02:07,136 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:02:07,136 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:02:07,136 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:02:07,136 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:02:07,137 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:02:07,137 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:02:07,138 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:07,138 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:02:07,138 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:02:07,139 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:02:07,139 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:02:07,139 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:02:07,139 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:07,305 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:02:07,325 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:02:07,327 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:02:07,328 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:02:07,328 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:02:07,329 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound10.c [2022-04-27 13:02:07,395 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0523781fb/9917ff3ddbcb41afa2e6551128db25e4/FLAGd71b99138 [2022-04-27 13:02:07,714 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:02:07,715 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_valuebound10.c [2022-04-27 13:02:07,720 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0523781fb/9917ff3ddbcb41afa2e6551128db25e4/FLAGd71b99138 [2022-04-27 13:02:08,147 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0523781fb/9917ff3ddbcb41afa2e6551128db25e4 [2022-04-27 13:02:08,150 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:02:08,151 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:02:08,152 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:08,152 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:02:08,156 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:02:08,157 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:08" (1/1) ... [2022-04-27 13:02:08,158 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@69465c37 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:08, skipping insertion in model container [2022-04-27 13:02:08,158 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:08" (1/1) ... [2022-04-27 13:02:08,163 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:02:08,173 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:02:08,315 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_valuebound10.c[490,503] [2022-04-27 13:02:08,346 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:08,354 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:02:08,371 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_valuebound10.c[490,503] [2022-04-27 13:02:08,388 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:08,402 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:02:08,403 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:08 WrapperNode [2022-04-27 13:02:08,403 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:08,403 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:02:08,403 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:02:08,404 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:02:08,412 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:08" (1/1) ... [2022-04-27 13:02:08,412 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:08" (1/1) ... [2022-04-27 13:02:08,417 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:08" (1/1) ... [2022-04-27 13:02:08,417 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:08" (1/1) ... [2022-04-27 13:02:08,422 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:08" (1/1) ... [2022-04-27 13:02:08,425 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:08" (1/1) ... [2022-04-27 13:02:08,426 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:08" (1/1) ... [2022-04-27 13:02:08,428 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:02:08,429 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:02:08,429 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:02:08,429 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:02:08,429 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:08" (1/1) ... [2022-04-27 13:02:08,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:08,443 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:08,453 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:08,459 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:08,495 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:02:08,495 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:02:08,495 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:02:08,495 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:02:08,495 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:02:08,495 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:02:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:02:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:02:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:02:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:02:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 13:02:08,496 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:02:08,499 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:02:08,499 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:02:08,499 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:02:08,499 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:02:08,499 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:02:08,500 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:02:08,500 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:02:08,500 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:02:08,544 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:02:08,545 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:02:08,729 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:02:08,734 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:02:08,734 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 13:02:08,736 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:08 BoogieIcfgContainer [2022-04-27 13:02:08,736 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:02:08,737 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:02:08,737 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:02:08,740 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:02:08,740 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:02:08" (1/3) ... [2022-04-27 13:02:08,741 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@24888724 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:08, skipping insertion in model container [2022-04-27 13:02:08,741 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:08" (2/3) ... [2022-04-27 13:02:08,741 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@24888724 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:08, skipping insertion in model container [2022-04-27 13:02:08,741 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:08" (3/3) ... [2022-04-27 13:02:08,742 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_valuebound10.c [2022-04-27 13:02:08,759 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:02:08,759 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:02:08,814 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:02:08,822 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@2d3f4280, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@4c0068c4 [2022-04-27 13:02:08,823 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:02:08,831 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:08,841 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 13:02:08,841 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:08,842 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:08,842 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:08,849 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:08,849 INFO L85 PathProgramCache]: Analyzing trace with hash -587582002, now seen corresponding path program 1 times [2022-04-27 13:02:08,856 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:08,856 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [647024974] [2022-04-27 13:02:08,857 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:08,857 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:08,984 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,054 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:02:09,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,080 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:09,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:09,081 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-27 13:02:09,082 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:02:09,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,093 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,094 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,095 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,095 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-27 13:02:09,095 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-27 13:02:09,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,109 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,110 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,111 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-27 13:02:09,111 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 13:02:09,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,123 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,124 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,124 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,124 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-27 13:02:09,124 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 13:02:09,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,149 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,152 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,152 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,152 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-27 13:02:09,153 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 28 [2022-04-27 13:02:09,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,158 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,159 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,159 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,159 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-27 13:02:09,160 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-27 13:02:09,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,167 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,168 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,168 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-27 13:02:09,170 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:09,170 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:09,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:09,171 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #103#return; {43#true} is VALID [2022-04-27 13:02:09,171 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret6 := main(); {43#true} is VALID [2022-04-27 13:02:09,172 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:09,172 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:09,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,174 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,175 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #79#return; {44#false} is VALID [2022-04-27 13:02:09,176 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:09,176 INFO L272 TraceCheckUtils]: 12: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:09,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,177 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,177 INFO L290 TraceCheckUtils]: 15: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,177 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {44#false} {44#false} #81#return; {44#false} is VALID [2022-04-27 13:02:09,177 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:09,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,178 INFO L290 TraceCheckUtils]: 19: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,183 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {44#false} {44#false} #83#return; {44#false} is VALID [2022-04-27 13:02:09,183 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:09,184 INFO L290 TraceCheckUtils]: 23: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,184 INFO L290 TraceCheckUtils]: 24: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,184 INFO L290 TraceCheckUtils]: 25: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,185 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {44#false} {44#false} #85#return; {44#false} is VALID [2022-04-27 13:02:09,185 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:09,185 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:09,185 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,186 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,186 INFO L290 TraceCheckUtils]: 31: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,186 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {44#false} {44#false} #87#return; {44#false} is VALID [2022-04-27 13:02:09,186 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:09,187 INFO L290 TraceCheckUtils]: 34: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:09,189 INFO L290 TraceCheckUtils]: 35: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:09,189 INFO L290 TraceCheckUtils]: 36: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:09,189 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {44#false} {44#false} #89#return; {44#false} is VALID [2022-04-27 13:02:09,189 INFO L290 TraceCheckUtils]: 38: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-27 13:02:09,190 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:09,190 INFO L290 TraceCheckUtils]: 40: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-27 13:02:09,190 INFO L290 TraceCheckUtils]: 41: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-27 13:02:09,190 INFO L290 TraceCheckUtils]: 42: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-27 13:02:09,191 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:09,191 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:09,191 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [647024974] [2022-04-27 13:02:09,192 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [647024974] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:09,192 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:09,192 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:02:09,193 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1163151529] [2022-04-27 13:02:09,194 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:09,198 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:09,201 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:09,204 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:09,251 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:09,251 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:02:09,252 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:09,272 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:02:09,273 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:02:09,275 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:09,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:09,459 INFO L93 Difference]: Finished difference Result 73 states and 118 transitions. [2022-04-27 13:02:09,460 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:02:09,460 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:09,460 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:09,461 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:09,469 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-27 13:02:09,469 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:09,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 118 transitions. [2022-04-27 13:02:09,474 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 118 transitions. [2022-04-27 13:02:09,577 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:09,584 INFO L225 Difference]: With dead ends: 73 [2022-04-27 13:02:09,584 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 13:02:09,587 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:09,590 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:09,591 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:09,601 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 13:02:09,618 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-27 13:02:09,619 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:09,620 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:09,621 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:09,622 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:09,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:09,631 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-27 13:02:09,632 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 13:02:09,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:09,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:09,633 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:09,634 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:09,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:09,644 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-27 13:02:09,644 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 13:02:09,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:09,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:09,646 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:09,646 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:09,647 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:09,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 46 transitions. [2022-04-27 13:02:09,654 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 46 transitions. Word has length 43 [2022-04-27 13:02:09,654 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:09,655 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 46 transitions. [2022-04-27 13:02:09,656 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:09,657 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 13:02:09,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:02:09,663 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:09,663 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:09,663 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:02:09,663 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:09,664 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:09,664 INFO L85 PathProgramCache]: Analyzing trace with hash 987777007, now seen corresponding path program 1 times [2022-04-27 13:02:09,664 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:09,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1950097042] [2022-04-27 13:02:09,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:09,664 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:09,708 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:09,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1529281186] [2022-04-27 13:02:09,709 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:09,709 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:09,709 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:09,713 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:09,713 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:09,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,782 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:02:09,819 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:09,823 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:10,040 INFO L272 TraceCheckUtils]: 0: Hoare triple {308#true} call ULTIMATE.init(); {308#true} is VALID [2022-04-27 13:02:10,040 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:10,040 INFO L290 TraceCheckUtils]: 2: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,041 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {308#true} {308#true} #103#return; {308#true} is VALID [2022-04-27 13:02:10,041 INFO L272 TraceCheckUtils]: 4: Hoare triple {308#true} call #t~ret6 := main(); {308#true} is VALID [2022-04-27 13:02:10,041 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:10,041 INFO L272 TraceCheckUtils]: 6: Hoare triple {308#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:10,041 INFO L290 TraceCheckUtils]: 7: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,041 INFO L290 TraceCheckUtils]: 8: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,041 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,041 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {308#true} {308#true} #79#return; {308#true} is VALID [2022-04-27 13:02:10,041 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:10,042 INFO L272 TraceCheckUtils]: 12: Hoare triple {308#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:10,042 INFO L290 TraceCheckUtils]: 13: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,042 INFO L290 TraceCheckUtils]: 14: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,043 INFO L290 TraceCheckUtils]: 15: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,043 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {308#true} {308#true} #81#return; {308#true} is VALID [2022-04-27 13:02:10,043 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:10,043 INFO L290 TraceCheckUtils]: 18: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,043 INFO L290 TraceCheckUtils]: 19: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,043 INFO L290 TraceCheckUtils]: 20: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,044 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {308#true} {308#true} #83#return; {308#true} is VALID [2022-04-27 13:02:10,044 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:10,044 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:10,044 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:10,045 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:10,046 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:10,046 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:10,047 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:10,047 INFO L290 TraceCheckUtils]: 29: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,059 INFO L290 TraceCheckUtils]: 30: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,059 INFO L290 TraceCheckUtils]: 31: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,060 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:10,060 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:10,060 INFO L290 TraceCheckUtils]: 34: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,061 INFO L290 TraceCheckUtils]: 35: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,061 INFO L290 TraceCheckUtils]: 36: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,062 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:10,063 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:10,066 INFO L290 TraceCheckUtils]: 39: Hoare triple {397#(<= 1 main_~b~0)} assume !(0 != ~b~0); {309#false} is VALID [2022-04-27 13:02:10,067 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:10,067 INFO L290 TraceCheckUtils]: 41: Hoare triple {309#false} ~cond := #in~cond; {309#false} is VALID [2022-04-27 13:02:10,067 INFO L290 TraceCheckUtils]: 42: Hoare triple {309#false} assume 0 == ~cond; {309#false} is VALID [2022-04-27 13:02:10,067 INFO L290 TraceCheckUtils]: 43: Hoare triple {309#false} assume !false; {309#false} is VALID [2022-04-27 13:02:10,067 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:10,068 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:10,355 INFO L290 TraceCheckUtils]: 43: Hoare triple {309#false} assume !false; {309#false} is VALID [2022-04-27 13:02:10,355 INFO L290 TraceCheckUtils]: 42: Hoare triple {309#false} assume 0 == ~cond; {309#false} is VALID [2022-04-27 13:02:10,355 INFO L290 TraceCheckUtils]: 41: Hoare triple {309#false} ~cond := #in~cond; {309#false} is VALID [2022-04-27 13:02:10,355 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:10,356 INFO L290 TraceCheckUtils]: 39: Hoare triple {397#(<= 1 main_~b~0)} assume !(0 != ~b~0); {309#false} is VALID [2022-04-27 13:02:10,357 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:10,357 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:10,357 INFO L290 TraceCheckUtils]: 36: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,357 INFO L290 TraceCheckUtils]: 35: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,357 INFO L290 TraceCheckUtils]: 34: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,358 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:10,367 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:10,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,367 INFO L290 TraceCheckUtils]: 30: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,368 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:10,368 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:10,369 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:10,369 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:10,370 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:10,370 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:10,370 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:10,370 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {308#true} {308#true} #83#return; {308#true} is VALID [2022-04-27 13:02:10,371 INFO L290 TraceCheckUtils]: 20: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,371 INFO L290 TraceCheckUtils]: 19: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,371 INFO L290 TraceCheckUtils]: 18: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,371 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:10,371 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {308#true} {308#true} #81#return; {308#true} is VALID [2022-04-27 13:02:10,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,371 INFO L272 TraceCheckUtils]: 12: Hoare triple {308#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:10,371 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:10,371 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {308#true} {308#true} #79#return; {308#true} is VALID [2022-04-27 13:02:10,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {308#true} assume !(0 == ~cond); {308#true} is VALID [2022-04-27 13:02:10,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {308#true} ~cond := #in~cond; {308#true} is VALID [2022-04-27 13:02:10,372 INFO L272 TraceCheckUtils]: 6: Hoare triple {308#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {308#true} is VALID [2022-04-27 13:02:10,372 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:10,372 INFO L272 TraceCheckUtils]: 4: Hoare triple {308#true} call #t~ret6 := main(); {308#true} is VALID [2022-04-27 13:02:10,372 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {308#true} {308#true} #103#return; {308#true} is VALID [2022-04-27 13:02:10,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {308#true} assume true; {308#true} is VALID [2022-04-27 13:02:10,372 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:10,372 INFO L272 TraceCheckUtils]: 0: Hoare triple {308#true} call ULTIMATE.init(); {308#true} is VALID [2022-04-27 13:02:10,373 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:10,373 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:10,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1950097042] [2022-04-27 13:02:10,373 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:10,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1529281186] [2022-04-27 13:02:10,373 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1529281186] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:02:10,373 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:02:10,373 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-27 13:02:10,374 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [893648477] [2022-04-27 13:02:10,374 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:10,375 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:10,375 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:10,375 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:10,401 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:10,401 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 13:02:10,401 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:10,402 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 13:02:10,402 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-27 13:02:10,402 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:10,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:10,715 INFO L93 Difference]: Finished difference Result 52 states and 69 transitions. [2022-04-27 13:02:10,715 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:02:10,715 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:10,716 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:10,716 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:10,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-27 13:02:10,718 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:10,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 69 transitions. [2022-04-27 13:02:10,721 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 69 transitions. [2022-04-27 13:02:10,767 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:10,769 INFO L225 Difference]: With dead ends: 52 [2022-04-27 13:02:10,769 INFO L226 Difference]: Without dead ends: 44 [2022-04-27 13:02:10,770 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:10,770 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:10,771 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:10,771 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-27 13:02:10,785 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-27 13:02:10,785 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:10,786 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:10,786 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:10,786 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:10,789 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:10,789 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-27 13:02:10,789 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-27 13:02:10,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:10,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:10,790 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:10,790 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:10,792 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:10,792 INFO L93 Difference]: Finished difference Result 44 states and 60 transitions. [2022-04-27 13:02:10,792 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 60 transitions. [2022-04-27 13:02:10,793 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:10,793 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:10,793 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:10,793 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:10,793 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:10,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-27 13:02:10,795 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 44 [2022-04-27 13:02:10,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:10,795 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-27 13:02:10,796 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:10,796 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-27 13:02:10,796 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-27 13:02:10,796 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:10,797 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:10,815 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:11,015 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:11,016 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:11,016 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:11,016 INFO L85 PathProgramCache]: Analyzing trace with hash 561616070, now seen corresponding path program 1 times [2022-04-27 13:02:11,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:11,016 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1761047460] [2022-04-27 13:02:11,016 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:11,016 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:11,036 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:11,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [427573357] [2022-04-27 13:02:11,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:11,037 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:11,037 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:11,038 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:11,039 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:11,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:11,082 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 13:02:11,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:11,098 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:11,280 INFO L272 TraceCheckUtils]: 0: Hoare triple {809#true} call ULTIMATE.init(); {809#true} is VALID [2022-04-27 13:02:11,280 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:11,280 INFO L290 TraceCheckUtils]: 2: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,280 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {809#true} {809#true} #103#return; {809#true} is VALID [2022-04-27 13:02:11,280 INFO L272 TraceCheckUtils]: 4: Hoare triple {809#true} call #t~ret6 := main(); {809#true} is VALID [2022-04-27 13:02:11,280 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:11,281 INFO L272 TraceCheckUtils]: 6: Hoare triple {809#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:11,281 INFO L290 TraceCheckUtils]: 7: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,281 INFO L290 TraceCheckUtils]: 8: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,281 INFO L290 TraceCheckUtils]: 9: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,281 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {809#true} {809#true} #79#return; {809#true} is VALID [2022-04-27 13:02:11,281 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:11,281 INFO L272 TraceCheckUtils]: 12: Hoare triple {809#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:11,281 INFO L290 TraceCheckUtils]: 13: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,281 INFO L290 TraceCheckUtils]: 14: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,281 INFO L290 TraceCheckUtils]: 15: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,282 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {809#true} {809#true} #81#return; {809#true} is VALID [2022-04-27 13:02:11,282 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:11,282 INFO L290 TraceCheckUtils]: 18: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,282 INFO L290 TraceCheckUtils]: 19: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,282 INFO L290 TraceCheckUtils]: 20: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,282 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {809#true} {809#true} #83#return; {809#true} is VALID [2022-04-27 13:02:11,282 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:11,283 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:11,283 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:11,284 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:11,285 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:11,286 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:11,286 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:11,286 INFO L290 TraceCheckUtils]: 29: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,286 INFO L290 TraceCheckUtils]: 30: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,286 INFO L290 TraceCheckUtils]: 31: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,290 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:11,290 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:11,290 INFO L290 TraceCheckUtils]: 34: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,291 INFO L290 TraceCheckUtils]: 35: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,291 INFO L290 TraceCheckUtils]: 36: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,291 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:11,292 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:11,292 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:11,292 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:11,293 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:11,294 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:11,294 INFO L290 TraceCheckUtils]: 43: Hoare triple {946#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {810#false} is VALID [2022-04-27 13:02:11,294 INFO L290 TraceCheckUtils]: 44: Hoare triple {810#false} assume !false; {810#false} is VALID [2022-04-27 13:02:11,294 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:11,294 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:11,521 INFO L290 TraceCheckUtils]: 44: Hoare triple {810#false} assume !false; {810#false} is VALID [2022-04-27 13:02:11,521 INFO L290 TraceCheckUtils]: 43: Hoare triple {946#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {810#false} is VALID [2022-04-27 13:02:11,522 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:11,522 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:11,523 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:11,523 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:11,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {809#true} assume !false; {809#true} is VALID [2022-04-27 13:02:11,523 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {809#true} {809#true} #89#return; {809#true} is VALID [2022-04-27 13:02:11,523 INFO L290 TraceCheckUtils]: 36: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,523 INFO L290 TraceCheckUtils]: 35: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 34: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,524 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:11,524 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {809#true} {809#true} #87#return; {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 31: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 29: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,524 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:11,524 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:11,524 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {809#true} {809#true} #85#return; {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 25: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 24: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,524 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,524 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:11,525 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {809#true} {809#true} #83#return; {809#true} is VALID [2022-04-27 13:02:11,525 INFO L290 TraceCheckUtils]: 20: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,525 INFO L290 TraceCheckUtils]: 19: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,525 INFO L290 TraceCheckUtils]: 18: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,525 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:11,525 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {809#true} {809#true} #81#return; {809#true} is VALID [2022-04-27 13:02:11,525 INFO L290 TraceCheckUtils]: 15: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,525 INFO L272 TraceCheckUtils]: 12: Hoare triple {809#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:11,525 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:11,525 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {809#true} {809#true} #79#return; {809#true} is VALID [2022-04-27 13:02:11,526 INFO L290 TraceCheckUtils]: 9: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,526 INFO L290 TraceCheckUtils]: 8: Hoare triple {809#true} assume !(0 == ~cond); {809#true} is VALID [2022-04-27 13:02:11,526 INFO L290 TraceCheckUtils]: 7: Hoare triple {809#true} ~cond := #in~cond; {809#true} is VALID [2022-04-27 13:02:11,526 INFO L272 TraceCheckUtils]: 6: Hoare triple {809#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {809#true} is VALID [2022-04-27 13:02:11,526 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:11,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {809#true} call #t~ret6 := main(); {809#true} is VALID [2022-04-27 13:02:11,526 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {809#true} {809#true} #103#return; {809#true} is VALID [2022-04-27 13:02:11,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {809#true} assume true; {809#true} is VALID [2022-04-27 13:02:11,526 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:11,526 INFO L272 TraceCheckUtils]: 0: Hoare triple {809#true} call ULTIMATE.init(); {809#true} is VALID [2022-04-27 13:02:11,526 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:11,527 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:11,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1761047460] [2022-04-27 13:02:11,527 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:11,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [427573357] [2022-04-27 13:02:11,527 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [427573357] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:02:11,527 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:02:11,527 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-27 13:02:11,527 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1441014071] [2022-04-27 13:02:11,527 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:11,528 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:11,528 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:11,528 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:11,551 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:11,551 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:02:11,551 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:11,551 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:02:11,551 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:11,552 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:11,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:11,746 INFO L93 Difference]: Finished difference Result 43 states and 53 transitions. [2022-04-27 13:02:11,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:02:11,746 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:11,747 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:11,747 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:11,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-27 13:02:11,748 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:11,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 51 transitions. [2022-04-27 13:02:11,749 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 51 transitions. [2022-04-27 13:02:11,789 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:11,790 INFO L225 Difference]: With dead ends: 43 [2022-04-27 13:02:11,790 INFO L226 Difference]: Without dead ends: 41 [2022-04-27 13:02:11,791 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:11,791 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:11,792 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:11,792 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-27 13:02:11,804 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-04-27 13:02:11,804 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:11,805 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:11,805 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:11,805 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:11,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:11,807 INFO L93 Difference]: Finished difference Result 41 states and 51 transitions. [2022-04-27 13:02:11,807 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 13:02:11,807 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:11,807 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:11,808 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:11,808 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:11,809 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:11,810 INFO L93 Difference]: Finished difference Result 41 states and 51 transitions. [2022-04-27 13:02:11,810 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 13:02:11,810 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:11,810 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:11,810 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:11,810 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:11,810 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:11,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 51 transitions. [2022-04-27 13:02:11,812 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 51 transitions. Word has length 45 [2022-04-27 13:02:11,812 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:11,812 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 51 transitions. [2022-04-27 13:02:11,812 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:11,812 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 13:02:11,818 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-27 13:02:11,818 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:11,819 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:11,841 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 13:02:12,038 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:12,039 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:12,039 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:12,039 INFO L85 PathProgramCache]: Analyzing trace with hash -680064098, now seen corresponding path program 1 times [2022-04-27 13:02:12,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:12,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1795422100] [2022-04-27 13:02:12,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:12,040 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:12,057 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:12,058 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [677223352] [2022-04-27 13:02:12,058 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:12,058 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:12,058 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:12,059 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:12,066 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:12,109 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:12,111 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 13:02:12,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:12,127 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:14,441 INFO L272 TraceCheckUtils]: 0: Hoare triple {1300#true} call ULTIMATE.init(); {1300#true} is VALID [2022-04-27 13:02:14,442 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:14,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:14,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1300#true} {1300#true} #103#return; {1300#true} is VALID [2022-04-27 13:02:14,442 INFO L272 TraceCheckUtils]: 4: Hoare triple {1300#true} call #t~ret6 := main(); {1300#true} is VALID [2022-04-27 13:02:14,442 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:14,442 INFO L272 TraceCheckUtils]: 6: Hoare triple {1300#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:14,442 INFO L290 TraceCheckUtils]: 7: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:14,442 INFO L290 TraceCheckUtils]: 8: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:14,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:14,443 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1300#true} {1300#true} #79#return; {1300#true} is VALID [2022-04-27 13:02:14,443 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:14,443 INFO L272 TraceCheckUtils]: 12: Hoare triple {1300#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1300#true} is VALID [2022-04-27 13:02:14,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:14,443 INFO L290 TraceCheckUtils]: 14: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:14,443 INFO L290 TraceCheckUtils]: 15: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:14,443 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1300#true} {1300#true} #81#return; {1300#true} is VALID [2022-04-27 13:02:14,443 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:14,459 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:14,460 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:14,460 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:14,461 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:14,461 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:14,461 INFO L290 TraceCheckUtils]: 23: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:14,461 INFO L290 TraceCheckUtils]: 24: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:14,461 INFO L290 TraceCheckUtils]: 25: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:14,461 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:14,462 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:14,462 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:14,462 INFO L290 TraceCheckUtils]: 29: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:14,462 INFO L290 TraceCheckUtils]: 30: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:14,462 INFO L290 TraceCheckUtils]: 31: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:14,463 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:14,463 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:14,463 INFO L290 TraceCheckUtils]: 34: Hoare triple {1300#true} ~cond := #in~cond; {1300#true} is VALID [2022-04-27 13:02:14,463 INFO L290 TraceCheckUtils]: 35: Hoare triple {1300#true} assume !(0 == ~cond); {1300#true} is VALID [2022-04-27 13:02:14,463 INFO L290 TraceCheckUtils]: 36: Hoare triple {1300#true} assume true; {1300#true} is VALID [2022-04-27 13:02:14,463 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:14,464 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:14,464 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:14,465 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:14,465 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:14,465 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:14,465 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:14,466 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:14,466 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:14,467 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:14,467 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:14,467 INFO L290 TraceCheckUtils]: 48: Hoare triple {1453#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1301#false} is VALID [2022-04-27 13:02:14,467 INFO L290 TraceCheckUtils]: 49: Hoare triple {1301#false} assume !false; {1301#false} is VALID [2022-04-27 13:02:14,468 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:14,468 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:48,266 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:48,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1795422100] [2022-04-27 13:02:48,266 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:48,266 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [677223352] [2022-04-27 13:02:48,266 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [677223352] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:02:48,266 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:02:48,267 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-27 13:02:48,267 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1515784668] [2022-04-27 13:02:48,267 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:48,267 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:02:48,267 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:48,268 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:02:48,295 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:02:48,295 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:02:48,295 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:48,296 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:02:48,296 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:02:48,296 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:02:48,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:48,817 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-27 13:02:48,817 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 13:02:48,817 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:02:48,818 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:48,818 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:02:48,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-27 13:02:48,819 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:02:48,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 65 transitions. [2022-04-27 13:02:48,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 65 transitions. [2022-04-27 13:02:48,875 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:02:48,878 INFO L225 Difference]: With dead ends: 54 [2022-04-27 13:02:48,878 INFO L226 Difference]: Without dead ends: 52 [2022-04-27 13:02:48,878 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:02:48,881 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 25 mSDsluCounter, 133 mSDsCounter, 0 mSdLazyCounter, 214 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:48,881 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.2s Time] [2022-04-27 13:02:48,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-27 13:02:48,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 51. [2022-04-27 13:02:48,907 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:48,907 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:02:48,908 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:02:48,908 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:02:48,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:48,911 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-27 13:02:48,911 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-27 13:02:48,912 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:48,912 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:48,912 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:02:48,913 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:02:48,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:48,917 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-27 13:02:48,917 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-27 13:02:48,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:48,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:48,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:48,918 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:48,919 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:02:48,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 65 transitions. [2022-04-27 13:02:48,922 INFO L78 Accepts]: Start accepts. Automaton has 51 states and 65 transitions. Word has length 50 [2022-04-27 13:02:48,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:48,922 INFO L495 AbstractCegarLoop]: Abstraction has 51 states and 65 transitions. [2022-04-27 13:02:48,922 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:02:48,922 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 65 transitions. [2022-04-27 13:02:48,923 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-27 13:02:48,923 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:48,923 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:02:48,943 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:02:49,139 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:02:49,140 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:49,140 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:49,140 INFO L85 PathProgramCache]: Analyzing trace with hash 606548870, now seen corresponding path program 1 times [2022-04-27 13:02:49,140 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:49,140 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [350231348] [2022-04-27 13:02:49,140 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:49,141 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:49,151 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:49,152 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1403429310] [2022-04-27 13:02:49,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:49,152 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:49,152 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:49,152 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:02:49,153 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:02:49,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:49,193 INFO L263 TraceCheckSpWp]: Trace formula consists of 155 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-27 13:02:49,203 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:49,205 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:49,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {1746#true} call ULTIMATE.init(); {1746#true} is VALID [2022-04-27 13:02:49,579 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:02:49,579 INFO L290 TraceCheckUtils]: 2: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,579 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1746#true} {1746#true} #103#return; {1746#true} is VALID [2022-04-27 13:02:49,579 INFO L272 TraceCheckUtils]: 4: Hoare triple {1746#true} call #t~ret6 := main(); {1746#true} is VALID [2022-04-27 13:02:49,579 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:02:49,580 INFO L272 TraceCheckUtils]: 6: Hoare triple {1746#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:02:49,580 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:02:49,580 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:02:49,581 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:02:49,581 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1776#(not (= |assume_abort_if_not_#in~cond| 0))} {1746#true} #79#return; {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} is VALID [2022-04-27 13:02:49,581 INFO L290 TraceCheckUtils]: 11: Hoare triple {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} is VALID [2022-04-27 13:02:49,581 INFO L272 TraceCheckUtils]: 12: Hoare triple {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:02:49,582 INFO L290 TraceCheckUtils]: 13: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,582 INFO L290 TraceCheckUtils]: 14: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,582 INFO L290 TraceCheckUtils]: 15: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,582 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1746#true} {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} #81#return; {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} is VALID [2022-04-27 13:02:49,582 INFO L272 TraceCheckUtils]: 17: Hoare triple {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:02:49,583 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:02:49,583 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:02:49,583 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:02:49,584 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1776#(not (= |assume_abort_if_not_#in~cond| 0))} {1783#(and (<= main_~x~0 10) (<= 0 main_~x~0))} #83#return; {1817#(and (<= 1 main_~x~0) (<= main_~x~0 10))} is VALID [2022-04-27 13:02:49,584 INFO L272 TraceCheckUtils]: 22: Hoare triple {1817#(and (<= 1 main_~x~0) (<= main_~x~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:02:49,584 INFO L290 TraceCheckUtils]: 23: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,584 INFO L290 TraceCheckUtils]: 24: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,584 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1746#true} {1817#(and (<= 1 main_~x~0) (<= main_~x~0 10))} #85#return; {1817#(and (<= 1 main_~x~0) (<= main_~x~0 10))} is VALID [2022-04-27 13:02:49,585 INFO L290 TraceCheckUtils]: 27: Hoare triple {1817#(and (<= 1 main_~x~0) (<= main_~x~0 10))} ~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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,585 INFO L272 TraceCheckUtils]: 28: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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:02:49,585 INFO L290 TraceCheckUtils]: 29: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,585 INFO L290 TraceCheckUtils]: 30: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,585 INFO L290 TraceCheckUtils]: 31: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,586 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,586 INFO L272 TraceCheckUtils]: 33: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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:02:49,586 INFO L290 TraceCheckUtils]: 34: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,586 INFO L290 TraceCheckUtils]: 35: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,586 INFO L290 TraceCheckUtils]: 36: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,587 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,587 INFO L290 TraceCheckUtils]: 38: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,587 INFO L290 TraceCheckUtils]: 39: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,588 INFO L290 TraceCheckUtils]: 40: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,588 INFO L272 TraceCheckUtils]: 41: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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:02:49,588 INFO L290 TraceCheckUtils]: 42: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,588 INFO L290 TraceCheckUtils]: 43: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,588 INFO L290 TraceCheckUtils]: 44: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,589 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,589 INFO L272 TraceCheckUtils]: 46: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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:02:49,589 INFO L290 TraceCheckUtils]: 47: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,589 INFO L290 TraceCheckUtils]: 48: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,589 INFO L290 TraceCheckUtils]: 49: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,590 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1746#true} {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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 10) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:02:49,590 INFO L272 TraceCheckUtils]: 51: Hoare triple {1836#(and (<= 1 main_~x~0) (= main_~s~0 1) (<= main_~x~0 10) (= 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:02:49,591 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:02:49,591 INFO L290 TraceCheckUtils]: 53: Hoare triple {1913#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1747#false} is VALID [2022-04-27 13:02:49,591 INFO L290 TraceCheckUtils]: 54: Hoare triple {1747#false} assume !false; {1747#false} is VALID [2022-04-27 13:02:49,591 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:02:49,591 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:49,857 INFO L290 TraceCheckUtils]: 54: Hoare triple {1747#false} assume !false; {1747#false} is VALID [2022-04-27 13:02:49,857 INFO L290 TraceCheckUtils]: 53: Hoare triple {1913#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1747#false} is VALID [2022-04-27 13:02:49,858 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:02:49,859 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:02:49,859 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:02:49,859 INFO L290 TraceCheckUtils]: 49: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,859 INFO L290 TraceCheckUtils]: 48: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,859 INFO L290 TraceCheckUtils]: 47: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,860 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:02:49,860 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:02:49,860 INFO L290 TraceCheckUtils]: 44: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,860 INFO L290 TraceCheckUtils]: 43: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,860 INFO L290 TraceCheckUtils]: 42: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,860 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:02:49,861 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:02:49,861 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:02:49,861 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:02:49,862 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:02:49,862 INFO L290 TraceCheckUtils]: 36: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,862 INFO L290 TraceCheckUtils]: 35: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,862 INFO L290 TraceCheckUtils]: 34: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,862 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:02:49,863 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:02:49,863 INFO L290 TraceCheckUtils]: 31: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,863 INFO L290 TraceCheckUtils]: 30: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,863 INFO L290 TraceCheckUtils]: 29: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,863 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:02:49,876 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:02:49,876 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1746#true} {1746#true} #85#return; {1746#true} is VALID [2022-04-27 13:02:49,876 INFO L290 TraceCheckUtils]: 25: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,876 INFO L290 TraceCheckUtils]: 23: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,876 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:02:49,876 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1746#true} {1746#true} #83#return; {1746#true} is VALID [2022-04-27 13:02:49,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,876 INFO L290 TraceCheckUtils]: 19: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,876 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:02:49,876 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1746#true} {1746#true} #81#return; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 15: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 14: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L272 TraceCheckUtils]: 12: Hoare triple {1746#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:02:49,877 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:02:49,877 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1746#true} {1746#true} #79#return; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 9: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 8: Hoare triple {1746#true} assume !(0 == ~cond); {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 7: Hoare triple {1746#true} ~cond := #in~cond; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L272 TraceCheckUtils]: 6: Hoare triple {1746#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {1746#true} is VALID [2022-04-27 13:02:49,877 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:02:49,877 INFO L272 TraceCheckUtils]: 4: Hoare triple {1746#true} call #t~ret6 := main(); {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1746#true} {1746#true} #103#return; {1746#true} is VALID [2022-04-27 13:02:49,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {1746#true} assume true; {1746#true} is VALID [2022-04-27 13:02:49,878 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:02:49,878 INFO L272 TraceCheckUtils]: 0: Hoare triple {1746#true} call ULTIMATE.init(); {1746#true} is VALID [2022-04-27 13:02:49,878 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:02:49,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:49,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [350231348] [2022-04-27 13:02:49,878 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:49,878 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1403429310] [2022-04-27 13:02:49,878 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1403429310] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:02:49,878 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:02:49,878 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-27 13:02:49,878 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1195865009] [2022-04-27 13:02:49,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:49,879 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:02:49,879 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:49,879 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:02:49,905 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:02:49,905 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:02:49,905 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:49,905 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:02:49,905 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:49,905 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:02:50,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:50,206 INFO L93 Difference]: Finished difference Result 58 states and 71 transitions. [2022-04-27 13:02:50,206 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:02:50,207 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:02:50,207 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:50,207 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:02:50,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:02:50,208 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:02:50,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-27 13:02:50,209 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-27 13:02:50,252 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:02:50,253 INFO L225 Difference]: With dead ends: 58 [2022-04-27 13:02:50,253 INFO L226 Difference]: Without dead ends: 56 [2022-04-27 13:02:50,254 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:02:50,254 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:02:50,254 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:02:50,255 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-27 13:02:50,280 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 55. [2022-04-27 13:02:50,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:50,280 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:02:50,280 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:02:50,281 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:02:50,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:50,290 INFO L93 Difference]: Finished difference Result 56 states and 69 transitions. [2022-04-27 13:02:50,290 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 69 transitions. [2022-04-27 13:02:50,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:50,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:50,290 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:02:50,290 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:02:50,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:50,292 INFO L93 Difference]: Finished difference Result 56 states and 69 transitions. [2022-04-27 13:02:50,292 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 69 transitions. [2022-04-27 13:02:50,292 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:50,292 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:50,292 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:50,292 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:50,293 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:02:50,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 68 transitions. [2022-04-27 13:02:50,294 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 68 transitions. Word has length 55 [2022-04-27 13:02:50,294 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:50,294 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 68 transitions. [2022-04-27 13:02:50,294 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:02:50,294 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-27 13:02:50,295 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-27 13:02:50,295 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:50,295 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:02:50,313 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:02:50,495 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:02:50,495 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:50,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:50,496 INFO L85 PathProgramCache]: Analyzing trace with hash 1584976990, now seen corresponding path program 1 times [2022-04-27 13:02:50,496 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:50,496 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [968280665] [2022-04-27 13:02:50,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:50,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:50,507 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:50,508 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1630935923] [2022-04-27 13:02:50,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:50,508 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:50,508 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:50,512 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:02:50,513 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:02:50,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:50,553 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 13:02:50,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:50,565 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:57,023 INFO L272 TraceCheckUtils]: 0: Hoare triple {2370#true} call ULTIMATE.init(); {2370#true} is VALID [2022-04-27 13:02:57,024 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:02:57,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,024 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2370#true} {2370#true} #103#return; {2370#true} is VALID [2022-04-27 13:02:57,024 INFO L272 TraceCheckUtils]: 4: Hoare triple {2370#true} call #t~ret6 := main(); {2370#true} is VALID [2022-04-27 13:02:57,024 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:02:57,024 INFO L272 TraceCheckUtils]: 6: Hoare triple {2370#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:02:57,024 INFO L290 TraceCheckUtils]: 7: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,024 INFO L290 TraceCheckUtils]: 8: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,024 INFO L290 TraceCheckUtils]: 9: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,024 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2370#true} {2370#true} #79#return; {2370#true} is VALID [2022-04-27 13:02:57,024 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:02:57,024 INFO L272 TraceCheckUtils]: 12: Hoare triple {2370#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 14: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 15: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2370#true} {2370#true} #81#return; {2370#true} is VALID [2022-04-27 13:02:57,025 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:02:57,025 INFO L290 TraceCheckUtils]: 18: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 19: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 20: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2370#true} {2370#true} #83#return; {2370#true} is VALID [2022-04-27 13:02:57,025 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:02:57,025 INFO L290 TraceCheckUtils]: 23: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L290 TraceCheckUtils]: 25: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,025 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2370#true} {2370#true} #85#return; {2370#true} is VALID [2022-04-27 13:02:57,026 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:02:57,026 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:02:57,026 INFO L290 TraceCheckUtils]: 29: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,026 INFO L290 TraceCheckUtils]: 30: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,026 INFO L290 TraceCheckUtils]: 31: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,027 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:02:57,027 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:02:57,027 INFO L290 TraceCheckUtils]: 34: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,027 INFO L290 TraceCheckUtils]: 35: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,027 INFO L290 TraceCheckUtils]: 36: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,029 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:02:57,029 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:02:57,029 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:02:57,030 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:02:57,030 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:02:57,030 INFO L290 TraceCheckUtils]: 42: Hoare triple {2370#true} ~cond := #in~cond; {2370#true} is VALID [2022-04-27 13:02:57,030 INFO L290 TraceCheckUtils]: 43: Hoare triple {2370#true} assume !(0 == ~cond); {2370#true} is VALID [2022-04-27 13:02:57,030 INFO L290 TraceCheckUtils]: 44: Hoare triple {2370#true} assume true; {2370#true} is VALID [2022-04-27 13:02:57,031 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:02:57,031 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:02:57,034 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:02:57,034 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:02:57,035 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:02:57,035 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:02:57,035 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:02:57,036 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:02:57,036 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:02:57,036 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:02:57,037 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:02:57,038 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:02:57,038 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:02:57,038 INFO L290 TraceCheckUtils]: 58: Hoare triple {2550#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2371#false} is VALID [2022-04-27 13:02:57,038 INFO L290 TraceCheckUtils]: 59: Hoare triple {2371#false} assume !false; {2371#false} is VALID [2022-04-27 13:02:57,039 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:02:57,039 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:36,836 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:36,836 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [968280665] [2022-04-27 13:03:36,836 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:36,836 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1630935923] [2022-04-27 13:03:36,836 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1630935923] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:03:36,836 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:03:36,836 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-27 13:03:36,837 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1082050206] [2022-04-27 13:03:36,837 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:36,837 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:03:36,837 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:36,837 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:03:36,869 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:03:36,869 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 13:03:36,869 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:36,869 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 13:03:36,869 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:03:36,869 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:03:37,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:37,185 INFO L93 Difference]: Finished difference Result 62 states and 74 transitions. [2022-04-27 13:03:37,185 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 13:03:37,185 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:03:37,185 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:37,185 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:03:37,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-27 13:03:37,186 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:03:37,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-27 13:03:37,187 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-27 13:03:37,248 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:37,249 INFO L225 Difference]: With dead ends: 62 [2022-04-27 13:03:37,249 INFO L226 Difference]: Without dead ends: 60 [2022-04-27 13:03:37,249 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:03:37,250 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:03:37,250 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:03:37,250 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-27 13:03:37,282 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-27 13:03:37,283 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:37,283 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:03:37,283 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:03:37,283 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:03:37,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:37,285 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-27 13:03:37,285 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 72 transitions. [2022-04-27 13:03:37,285 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:37,285 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:37,285 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:03:37,286 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:03:37,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:37,288 INFO L93 Difference]: Finished difference Result 60 states and 72 transitions. [2022-04-27 13:03:37,288 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 72 transitions. [2022-04-27 13:03:37,288 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:37,288 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:37,288 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:37,288 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:37,288 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:03:37,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 71 transitions. [2022-04-27 13:03:37,290 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 71 transitions. Word has length 60 [2022-04-27 13:03:37,290 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:37,290 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 71 transitions. [2022-04-27 13:03:37,291 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:03:37,291 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 71 transitions. [2022-04-27 13:03:37,291 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-27 13:03:37,291 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:37,291 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:03:37,311 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:03:37,509 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:03:37,509 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:37,509 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:37,509 INFO L85 PathProgramCache]: Analyzing trace with hash -1682830289, now seen corresponding path program 1 times [2022-04-27 13:03:37,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:37,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [177842574] [2022-04-27 13:03:37,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:37,510 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:37,520 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:37,521 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1830051330] [2022-04-27 13:03:37,521 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:37,521 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:37,521 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:37,522 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:03:37,522 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:03:37,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:37,565 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:03:37,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:37,574 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:37,774 INFO L272 TraceCheckUtils]: 0: Hoare triple {2878#true} call ULTIMATE.init(); {2878#true} is VALID [2022-04-27 13:03:37,775 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:03:37,775 INFO L290 TraceCheckUtils]: 2: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2878#true} {2878#true} #103#return; {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L272 TraceCheckUtils]: 4: Hoare triple {2878#true} call #t~ret6 := main(); {2878#true} is VALID [2022-04-27 13:03:37,775 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:03:37,775 INFO L272 TraceCheckUtils]: 6: Hoare triple {2878#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L290 TraceCheckUtils]: 7: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L290 TraceCheckUtils]: 8: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2878#true} {2878#true} #79#return; {2878#true} is VALID [2022-04-27 13:03:37,775 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:03:37,775 INFO L272 TraceCheckUtils]: 12: Hoare triple {2878#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L290 TraceCheckUtils]: 14: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,775 INFO L290 TraceCheckUtils]: 15: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,776 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2878#true} {2878#true} #81#return; {2878#true} is VALID [2022-04-27 13:03:37,776 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:03:37,791 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:03:37,792 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:03:37,792 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:03:37,792 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:03:37,792 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:03:37,792 INFO L290 TraceCheckUtils]: 23: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,793 INFO L290 TraceCheckUtils]: 24: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,793 INFO L290 TraceCheckUtils]: 25: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,793 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:03:37,793 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:03:37,793 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:03:37,794 INFO L290 TraceCheckUtils]: 29: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,794 INFO L290 TraceCheckUtils]: 30: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,794 INFO L290 TraceCheckUtils]: 31: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,794 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:03:37,794 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:03:37,794 INFO L290 TraceCheckUtils]: 34: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,794 INFO L290 TraceCheckUtils]: 35: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,794 INFO L290 TraceCheckUtils]: 36: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,795 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:03:37,795 INFO L290 TraceCheckUtils]: 38: Hoare triple {2967#(<= 1 main_~a~0)} assume !false; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:37,798 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:03:37,803 INFO L290 TraceCheckUtils]: 40: Hoare triple {3004#(<= 1 main_~c~0)} assume !false; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:37,803 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:03:37,803 INFO L290 TraceCheckUtils]: 42: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,803 INFO L290 TraceCheckUtils]: 43: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,803 INFO L290 TraceCheckUtils]: 44: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,804 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:03:37,804 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:03:37,804 INFO L290 TraceCheckUtils]: 47: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,804 INFO L290 TraceCheckUtils]: 48: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,804 INFO L290 TraceCheckUtils]: 49: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,805 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:03:37,805 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:03:37,805 INFO L290 TraceCheckUtils]: 52: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,805 INFO L290 TraceCheckUtils]: 53: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,805 INFO L290 TraceCheckUtils]: 54: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,806 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:03:37,806 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:03:37,806 INFO L290 TraceCheckUtils]: 57: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:37,806 INFO L290 TraceCheckUtils]: 58: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:37,806 INFO L290 TraceCheckUtils]: 59: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:37,806 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:03:37,807 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:03:37,807 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:03:37,807 INFO L290 TraceCheckUtils]: 63: Hoare triple {3074#(<= 1 main_~b~0)} assume !false; {3074#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:37,808 INFO L290 TraceCheckUtils]: 64: Hoare triple {3074#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2879#false} is VALID [2022-04-27 13:03:37,808 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:03:37,808 INFO L290 TraceCheckUtils]: 66: Hoare triple {2879#false} ~cond := #in~cond; {2879#false} is VALID [2022-04-27 13:03:37,808 INFO L290 TraceCheckUtils]: 67: Hoare triple {2879#false} assume 0 == ~cond; {2879#false} is VALID [2022-04-27 13:03:37,808 INFO L290 TraceCheckUtils]: 68: Hoare triple {2879#false} assume !false; {2879#false} is VALID [2022-04-27 13:03:37,808 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:03:37,808 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:38,052 INFO L290 TraceCheckUtils]: 68: Hoare triple {2879#false} assume !false; {2879#false} is VALID [2022-04-27 13:03:38,052 INFO L290 TraceCheckUtils]: 67: Hoare triple {2879#false} assume 0 == ~cond; {2879#false} is VALID [2022-04-27 13:03:38,052 INFO L290 TraceCheckUtils]: 66: Hoare triple {2879#false} ~cond := #in~cond; {2879#false} is VALID [2022-04-27 13:03:38,052 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:03:38,053 INFO L290 TraceCheckUtils]: 64: Hoare triple {3074#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2879#false} is VALID [2022-04-27 13:03:38,053 INFO L290 TraceCheckUtils]: 63: Hoare triple {3074#(<= 1 main_~b~0)} assume !false; {3074#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:38,053 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:03:38,053 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:03:38,054 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:03:38,054 INFO L290 TraceCheckUtils]: 59: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,054 INFO L290 TraceCheckUtils]: 58: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,054 INFO L290 TraceCheckUtils]: 57: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,054 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:03:38,055 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:03:38,055 INFO L290 TraceCheckUtils]: 54: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,055 INFO L290 TraceCheckUtils]: 53: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,055 INFO L290 TraceCheckUtils]: 52: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,055 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:03:38,055 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:03:38,055 INFO L290 TraceCheckUtils]: 49: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,056 INFO L290 TraceCheckUtils]: 48: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,056 INFO L290 TraceCheckUtils]: 47: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,056 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:03:38,056 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:03:38,056 INFO L290 TraceCheckUtils]: 44: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,056 INFO L290 TraceCheckUtils]: 43: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,056 INFO L290 TraceCheckUtils]: 42: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,056 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:03:38,056 INFO L290 TraceCheckUtils]: 40: Hoare triple {3004#(<= 1 main_~c~0)} assume !false; {3004#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:38,057 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:03:38,057 INFO L290 TraceCheckUtils]: 38: Hoare triple {2967#(<= 1 main_~a~0)} assume !false; {2967#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:38,057 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:03:38,057 INFO L290 TraceCheckUtils]: 36: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,057 INFO L290 TraceCheckUtils]: 35: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,057 INFO L290 TraceCheckUtils]: 34: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,058 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:03:38,065 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:03:38,065 INFO L290 TraceCheckUtils]: 31: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,065 INFO L290 TraceCheckUtils]: 30: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,065 INFO L290 TraceCheckUtils]: 29: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,065 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:03:38,065 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:03:38,066 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:03:38,066 INFO L290 TraceCheckUtils]: 25: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,066 INFO L290 TraceCheckUtils]: 24: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,066 INFO L290 TraceCheckUtils]: 23: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,066 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:03:38,066 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:03:38,066 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:03:38,067 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:03:38,067 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:03:38,067 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:03:38,067 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2878#true} {2878#true} #81#return; {2878#true} is VALID [2022-04-27 13:03:38,067 INFO L290 TraceCheckUtils]: 15: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,067 INFO L290 TraceCheckUtils]: 14: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,067 INFO L290 TraceCheckUtils]: 13: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,067 INFO L272 TraceCheckUtils]: 12: Hoare triple {2878#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:03:38,067 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:03:38,068 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2878#true} {2878#true} #79#return; {2878#true} is VALID [2022-04-27 13:03:38,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {2878#true} assume !(0 == ~cond); {2878#true} is VALID [2022-04-27 13:03:38,068 INFO L290 TraceCheckUtils]: 7: Hoare triple {2878#true} ~cond := #in~cond; {2878#true} is VALID [2022-04-27 13:03:38,068 INFO L272 TraceCheckUtils]: 6: Hoare triple {2878#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {2878#true} is VALID [2022-04-27 13:03:38,068 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:03:38,068 INFO L272 TraceCheckUtils]: 4: Hoare triple {2878#true} call #t~ret6 := main(); {2878#true} is VALID [2022-04-27 13:03:38,068 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2878#true} {2878#true} #103#return; {2878#true} is VALID [2022-04-27 13:03:38,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {2878#true} assume true; {2878#true} is VALID [2022-04-27 13:03:38,068 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:03:38,068 INFO L272 TraceCheckUtils]: 0: Hoare triple {2878#true} call ULTIMATE.init(); {2878#true} is VALID [2022-04-27 13:03:38,068 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:03:38,068 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:38,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [177842574] [2022-04-27 13:03:38,068 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:38,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1830051330] [2022-04-27 13:03:38,069 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1830051330] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:38,069 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:38,069 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 13:03:38,069 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [409194962] [2022-04-27 13:03:38,069 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:38,069 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:03:38,070 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:38,070 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:03:38,102 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:03:38,102 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:03:38,102 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:38,103 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:03:38,103 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:03:38,103 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:03:38,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:38,706 INFO L93 Difference]: Finished difference Result 106 states and 146 transitions. [2022-04-27 13:03:38,706 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:03:38,706 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:03:38,707 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:38,707 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:03:38,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-27 13:03:38,709 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:03:38,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 110 transitions. [2022-04-27 13:03:38,710 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 110 transitions. [2022-04-27 13:03:38,786 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:03:38,787 INFO L225 Difference]: With dead ends: 106 [2022-04-27 13:03:38,787 INFO L226 Difference]: Without dead ends: 98 [2022-04-27 13:03:38,788 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:03:38,788 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:03:38,789 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:03:38,789 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-27 13:03:38,866 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 89. [2022-04-27 13:03:38,867 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:38,867 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:03:38,867 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:03:38,867 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:03:38,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:38,870 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-27 13:03:38,870 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-27 13:03:38,871 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:38,871 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:38,871 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:03:38,871 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:03:38,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:38,874 INFO L93 Difference]: Finished difference Result 98 states and 137 transitions. [2022-04-27 13:03:38,874 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 137 transitions. [2022-04-27 13:03:38,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:38,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:38,875 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:38,875 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:38,875 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:03:38,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 122 transitions. [2022-04-27 13:03:38,877 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 122 transitions. Word has length 69 [2022-04-27 13:03:38,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:38,877 INFO L495 AbstractCegarLoop]: Abstraction has 89 states and 122 transitions. [2022-04-27 13:03:38,877 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:03:38,877 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 122 transitions. [2022-04-27 13:03:38,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-27 13:03:38,878 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:38,878 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:03:38,901 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:39,093 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:03:39,093 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:39,094 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:39,094 INFO L85 PathProgramCache]: Analyzing trace with hash 376741854, now seen corresponding path program 1 times [2022-04-27 13:03:39,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:39,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1487711167] [2022-04-27 13:03:39,094 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:39,094 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:39,105 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:39,105 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1731361554] [2022-04-27 13:03:39,106 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:39,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:39,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:39,106 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:03:39,107 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:03:39,149 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:39,150 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:03:39,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:39,159 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:39,352 INFO L272 TraceCheckUtils]: 0: Hoare triple {3815#true} call ULTIMATE.init(); {3815#true} is VALID [2022-04-27 13:03:39,352 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:03:39,352 INFO L290 TraceCheckUtils]: 2: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,352 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3815#true} {3815#true} #103#return; {3815#true} is VALID [2022-04-27 13:03:39,352 INFO L272 TraceCheckUtils]: 4: Hoare triple {3815#true} call #t~ret6 := main(); {3815#true} is VALID [2022-04-27 13:03:39,352 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:03:39,352 INFO L272 TraceCheckUtils]: 6: Hoare triple {3815#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:03:39,352 INFO L290 TraceCheckUtils]: 7: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,352 INFO L290 TraceCheckUtils]: 8: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 9: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3815#true} {3815#true} #79#return; {3815#true} is VALID [2022-04-27 13:03:39,353 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:03:39,353 INFO L272 TraceCheckUtils]: 12: Hoare triple {3815#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 13: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 15: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3815#true} {3815#true} #81#return; {3815#true} is VALID [2022-04-27 13:03:39,353 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:03:39,353 INFO L290 TraceCheckUtils]: 18: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 19: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 20: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3815#true} {3815#true} #83#return; {3815#true} is VALID [2022-04-27 13:03:39,353 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:03:39,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L290 TraceCheckUtils]: 25: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,353 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3815#true} {3815#true} #85#return; {3815#true} is VALID [2022-04-27 13:03:39,354 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:03:39,354 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:03:39,354 INFO L290 TraceCheckUtils]: 29: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,354 INFO L290 TraceCheckUtils]: 30: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,354 INFO L290 TraceCheckUtils]: 31: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,354 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:03:39,354 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:03:39,354 INFO L290 TraceCheckUtils]: 34: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,354 INFO L290 TraceCheckUtils]: 35: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,355 INFO L290 TraceCheckUtils]: 36: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,355 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:03:39,355 INFO L290 TraceCheckUtils]: 38: Hoare triple {3901#(= main_~q~0 0)} assume !false; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:03:39,355 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:03:39,356 INFO L290 TraceCheckUtils]: 40: Hoare triple {3901#(= main_~q~0 0)} assume !false; {3901#(= main_~q~0 0)} is VALID [2022-04-27 13:03:39,356 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:03:39,356 INFO L290 TraceCheckUtils]: 42: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,356 INFO L290 TraceCheckUtils]: 43: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,356 INFO L290 TraceCheckUtils]: 44: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,357 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:03:39,357 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:03:39,357 INFO L290 TraceCheckUtils]: 47: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,357 INFO L290 TraceCheckUtils]: 48: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,357 INFO L290 TraceCheckUtils]: 49: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,357 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:03:39,357 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:03:39,358 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:03:39,358 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:03:39,358 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:03:39,359 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:03:39,359 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:03:39,359 INFO L290 TraceCheckUtils]: 57: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,359 INFO L290 TraceCheckUtils]: 58: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,359 INFO L290 TraceCheckUtils]: 59: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,360 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:03:39,361 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:03:39,361 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:03:39,361 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:03:39,362 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:03:39,362 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:03:39,362 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:03:39,362 INFO L290 TraceCheckUtils]: 67: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:39,362 INFO L290 TraceCheckUtils]: 68: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:39,362 INFO L290 TraceCheckUtils]: 69: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:39,363 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:03:39,364 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:03:39,364 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:03:39,364 INFO L290 TraceCheckUtils]: 73: Hoare triple {4042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3816#false} is VALID [2022-04-27 13:03:39,365 INFO L290 TraceCheckUtils]: 74: Hoare triple {3816#false} assume !false; {3816#false} is VALID [2022-04-27 13:03:39,365 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:03:39,365 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:51,859 INFO L290 TraceCheckUtils]: 74: Hoare triple {3816#false} assume !false; {3816#false} is VALID [2022-04-27 13:03:51,859 INFO L290 TraceCheckUtils]: 73: Hoare triple {4042#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3816#false} is VALID [2022-04-27 13:03:51,859 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:03:51,860 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:03:51,860 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:03:51,861 INFO L290 TraceCheckUtils]: 69: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,861 INFO L290 TraceCheckUtils]: 68: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,861 INFO L290 TraceCheckUtils]: 67: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,861 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:03:51,861 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:03:51,861 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:03:51,862 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:03:51,862 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:03:51,862 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:03:51,863 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:03:51,863 INFO L290 TraceCheckUtils]: 59: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,863 INFO L290 TraceCheckUtils]: 58: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,863 INFO L290 TraceCheckUtils]: 57: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,863 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:03:51,864 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:03:51,864 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:03:51,864 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:03:51,865 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:03:51,865 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:03:51,865 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {3815#true} {3815#true} #93#return; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 49: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 48: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 47: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,865 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:03:51,865 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3815#true} {3815#true} #91#return; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 44: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 43: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 42: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,865 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:03:51,865 INFO L290 TraceCheckUtils]: 40: Hoare triple {3815#true} assume !false; {3815#true} is VALID [2022-04-27 13:03:51,865 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:03:51,865 INFO L290 TraceCheckUtils]: 38: Hoare triple {3815#true} assume !false; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3815#true} {3815#true} #89#return; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 36: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 35: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,865 INFO L290 TraceCheckUtils]: 34: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,866 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:03:51,866 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {3815#true} {3815#true} #87#return; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 31: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 30: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 29: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,866 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:03:51,866 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:03:51,866 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3815#true} {3815#true} #85#return; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 25: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 24: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 23: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,866 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:03:51,866 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3815#true} {3815#true} #83#return; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 19: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,866 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:03:51,866 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3815#true} {3815#true} #81#return; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 15: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 14: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L272 TraceCheckUtils]: 12: Hoare triple {3815#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:03:51,867 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:03:51,867 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3815#true} {3815#true} #79#return; {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L290 TraceCheckUtils]: 9: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L290 TraceCheckUtils]: 8: Hoare triple {3815#true} assume !(0 == ~cond); {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L290 TraceCheckUtils]: 7: Hoare triple {3815#true} ~cond := #in~cond; {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L272 TraceCheckUtils]: 6: Hoare triple {3815#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {3815#true} is VALID [2022-04-27 13:03:51,867 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:03:51,867 INFO L272 TraceCheckUtils]: 4: Hoare triple {3815#true} call #t~ret6 := main(); {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3815#true} {3815#true} #103#return; {3815#true} is VALID [2022-04-27 13:03:51,867 INFO L290 TraceCheckUtils]: 2: Hoare triple {3815#true} assume true; {3815#true} is VALID [2022-04-27 13:03:51,867 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:03:51,867 INFO L272 TraceCheckUtils]: 0: Hoare triple {3815#true} call ULTIMATE.init(); {3815#true} is VALID [2022-04-27 13:03:51,867 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:03:51,867 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:51,868 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1487711167] [2022-04-27 13:03:51,868 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:51,868 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1731361554] [2022-04-27 13:03:51,868 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1731361554] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:51,868 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:51,868 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-27 13:03:51,868 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1272684206] [2022-04-27 13:03:51,868 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:51,868 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:03:51,869 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:51,869 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:03:51,933 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:03:51,933 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:03:51,933 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:51,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:03:51,933 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:03:51,934 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:03:53,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:53,202 INFO L93 Difference]: Finished difference Result 132 states and 187 transitions. [2022-04-27 13:03:53,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:03:53,202 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:03:53,203 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:53,203 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:03:53,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-27 13:03:53,204 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:03:53,206 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-27 13:03:53,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-27 13:03:53,289 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:03:53,294 INFO L225 Difference]: With dead ends: 132 [2022-04-27 13:03:53,294 INFO L226 Difference]: Without dead ends: 128 [2022-04-27 13:03:53,297 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:03:53,299 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 30 mSDsluCounter, 209 mSDsCounter, 0 mSdLazyCounter, 349 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s 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.5s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:53,299 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.5s Time] [2022-04-27 13:03:53,300 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 128 states. [2022-04-27 13:03:53,382 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 128 to 96. [2022-04-27 13:03:53,383 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:53,383 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:03:53,383 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:03:53,383 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:03:53,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:53,387 INFO L93 Difference]: Finished difference Result 128 states and 181 transitions. [2022-04-27 13:03:53,387 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 181 transitions. [2022-04-27 13:03:53,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:53,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:53,388 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:03:53,388 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:03:53,399 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:53,400 INFO L93 Difference]: Finished difference Result 128 states and 181 transitions. [2022-04-27 13:03:53,400 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 181 transitions. [2022-04-27 13:03:53,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:53,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:53,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:53,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:53,401 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:03:53,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 130 transitions. [2022-04-27 13:03:53,403 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 130 transitions. Word has length 75 [2022-04-27 13:03:53,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:53,403 INFO L495 AbstractCegarLoop]: Abstraction has 96 states and 130 transitions. [2022-04-27 13:03:53,404 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:03:53,404 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 130 transitions. [2022-04-27 13:03:53,404 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2022-04-27 13:03:53,404 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:53,404 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:03:53,422 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:03:53,620 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:03:53,620 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:53,620 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:53,620 INFO L85 PathProgramCache]: Analyzing trace with hash -1245952186, now seen corresponding path program 2 times [2022-04-27 13:03:53,621 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:53,621 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [587648763] [2022-04-27 13:03:53,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:53,621 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:53,631 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:53,631 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [834277897] [2022-04-27 13:03:53,631 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:03:53,631 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:53,631 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:53,639 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:03:53,640 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:03:53,683 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:03:53,684 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:03:53,684 INFO L263 TraceCheckSpWp]: Trace formula consists of 213 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-27 13:03:53,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:53,697 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:54,675 INFO L272 TraceCheckUtils]: 0: Hoare triple {4909#true} call ULTIMATE.init(); {4909#true} is VALID [2022-04-27 13:03:54,675 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:03:54,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,675 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4909#true} {4909#true} #103#return; {4909#true} is VALID [2022-04-27 13:03:54,675 INFO L272 TraceCheckUtils]: 4: Hoare triple {4909#true} call #t~ret6 := main(); {4909#true} is VALID [2022-04-27 13:03:54,675 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:03:54,675 INFO L272 TraceCheckUtils]: 6: Hoare triple {4909#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,675 INFO L290 TraceCheckUtils]: 7: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,675 INFO L290 TraceCheckUtils]: 8: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,675 INFO L290 TraceCheckUtils]: 9: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,676 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4909#true} {4909#true} #79#return; {4909#true} is VALID [2022-04-27 13:03:54,676 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:03:54,676 INFO L272 TraceCheckUtils]: 12: Hoare triple {4909#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,676 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:03:54,676 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:03:54,676 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:03:54,677 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 10))} is VALID [2022-04-27 13:03:54,677 INFO L272 TraceCheckUtils]: 17: Hoare triple {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,677 INFO L290 TraceCheckUtils]: 18: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,677 INFO L290 TraceCheckUtils]: 19: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,677 INFO L290 TraceCheckUtils]: 20: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,677 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4909#true} {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #83#return; {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-27 13:03:54,678 INFO L272 TraceCheckUtils]: 22: Hoare triple {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,678 INFO L290 TraceCheckUtils]: 23: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,678 INFO L290 TraceCheckUtils]: 24: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,678 INFO L290 TraceCheckUtils]: 25: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,678 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4909#true} {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} #85#return; {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} is VALID [2022-04-27 13:03:54,678 INFO L290 TraceCheckUtils]: 27: Hoare triple {4964#(and (<= 0 main_~y~0) (<= main_~y~0 10))} ~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_~y~0 10) (= 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:03:54,678 INFO L272 TraceCheckUtils]: 28: Hoare triple {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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)); {4909#true} is VALID [2022-04-27 13:03:54,678 INFO L290 TraceCheckUtils]: 29: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,679 INFO L290 TraceCheckUtils]: 30: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,679 INFO L290 TraceCheckUtils]: 31: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,679 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {4909#true} {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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; {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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:03:54,679 INFO L272 TraceCheckUtils]: 33: Hoare triple {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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)); {4909#true} is VALID [2022-04-27 13:03:54,679 INFO L290 TraceCheckUtils]: 34: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,679 INFO L290 TraceCheckUtils]: 35: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,679 INFO L290 TraceCheckUtils]: 36: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,680 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {4909#true} {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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; {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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:03:54,680 INFO L290 TraceCheckUtils]: 38: Hoare triple {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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; {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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:03:54,681 INFO L290 TraceCheckUtils]: 39: Hoare triple {4998#(and (<= 0 main_~y~0) (= main_~r~0 0) (<= main_~y~0 10) (= 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; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !false; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,681 INFO L272 TraceCheckUtils]: 41: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,681 INFO L290 TraceCheckUtils]: 42: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,681 INFO L290 TraceCheckUtils]: 43: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,681 INFO L290 TraceCheckUtils]: 44: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,682 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #91#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,682 INFO L272 TraceCheckUtils]: 46: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,682 INFO L290 TraceCheckUtils]: 47: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,682 INFO L290 TraceCheckUtils]: 48: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,682 INFO L290 TraceCheckUtils]: 49: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,683 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #93#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,683 INFO L272 TraceCheckUtils]: 51: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:54,683 INFO L290 TraceCheckUtils]: 52: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,683 INFO L290 TraceCheckUtils]: 53: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,683 INFO L290 TraceCheckUtils]: 54: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,683 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #95#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,683 INFO L272 TraceCheckUtils]: 56: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= 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)); {4909#true} is VALID [2022-04-27 13:03:54,683 INFO L290 TraceCheckUtils]: 57: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,684 INFO L290 TraceCheckUtils]: 58: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,684 INFO L290 TraceCheckUtils]: 59: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,684 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {4909#true} {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #97#return; {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,685 INFO L290 TraceCheckUtils]: 61: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= 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_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:54,685 INFO L290 TraceCheckUtils]: 62: Hoare triple {5035#(and (<= 0 main_~y~0) (= main_~r~0 0) (not (= main_~y~0 0)) (<= main_~y~0 10) (= main_~k~0 0) (= main_~s~0 1) (= 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; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:54,685 INFO L290 TraceCheckUtils]: 63: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:54,686 INFO L290 TraceCheckUtils]: 64: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} 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_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:54,686 INFO L290 TraceCheckUtils]: 65: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !false; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:54,686 INFO L272 TraceCheckUtils]: 66: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= 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)); {4909#true} is VALID [2022-04-27 13:03:54,686 INFO L290 TraceCheckUtils]: 67: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,686 INFO L290 TraceCheckUtils]: 68: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,686 INFO L290 TraceCheckUtils]: 69: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,687 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {4909#true} {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #91#return; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:54,687 INFO L272 TraceCheckUtils]: 71: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= 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)); {4909#true} is VALID [2022-04-27 13:03:54,687 INFO L290 TraceCheckUtils]: 72: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:54,687 INFO L290 TraceCheckUtils]: 73: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:54,687 INFO L290 TraceCheckUtils]: 74: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:54,688 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {4909#true} {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #93#return; {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:54,689 INFO L272 TraceCheckUtils]: 76: Hoare triple {5105#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (= main_~s~0 0) (<= main_~y~0 10) (= 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)); {5148#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:54,689 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:03:54,689 INFO L290 TraceCheckUtils]: 78: Hoare triple {5152#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4910#false} is VALID [2022-04-27 13:03:54,689 INFO L290 TraceCheckUtils]: 79: Hoare triple {4910#false} assume !false; {4910#false} is VALID [2022-04-27 13:03:54,689 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:03:54,689 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:55,048 INFO L290 TraceCheckUtils]: 79: Hoare triple {4910#false} assume !false; {4910#false} is VALID [2022-04-27 13:03:55,048 INFO L290 TraceCheckUtils]: 78: Hoare triple {5152#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4910#false} is VALID [2022-04-27 13:03:55,059 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:03:55,060 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:03:55,061 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:03:55,061 INFO L290 TraceCheckUtils]: 74: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:55,061 INFO L290 TraceCheckUtils]: 73: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:55,061 INFO L290 TraceCheckUtils]: 72: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:55,061 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:03:55,062 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:03:55,062 INFO L290 TraceCheckUtils]: 69: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:55,062 INFO L290 TraceCheckUtils]: 68: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:55,062 INFO L290 TraceCheckUtils]: 67: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:55,062 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:03:55,062 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:03:55,063 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:03:55,063 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:03:57,064 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:03:57,065 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:03:57,066 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:03:57,066 INFO L290 TraceCheckUtils]: 59: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,066 INFO L290 TraceCheckUtils]: 58: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,066 INFO L290 TraceCheckUtils]: 57: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,066 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:03:57,066 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:03:57,067 INFO L290 TraceCheckUtils]: 54: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,067 INFO L290 TraceCheckUtils]: 53: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,067 INFO L290 TraceCheckUtils]: 52: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,067 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:03:57,067 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:03:57,067 INFO L290 TraceCheckUtils]: 49: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,067 INFO L290 TraceCheckUtils]: 48: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,067 INFO L290 TraceCheckUtils]: 47: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,067 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:03:57,068 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:03:57,068 INFO L290 TraceCheckUtils]: 44: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,068 INFO L290 TraceCheckUtils]: 43: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,068 INFO L290 TraceCheckUtils]: 42: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,068 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:03:57,069 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:03:57,069 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:03:57,069 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:03:57,070 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:03:57,070 INFO L290 TraceCheckUtils]: 36: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,070 INFO L290 TraceCheckUtils]: 35: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,070 INFO L290 TraceCheckUtils]: 34: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,070 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:03:57,070 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:03:57,071 INFO L290 TraceCheckUtils]: 31: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 30: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 29: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,071 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:03:57,071 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:03:57,071 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4909#true} {4909#true} #85#return; {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 25: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 24: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 23: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,071 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:03:57,071 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4909#true} {4909#true} #83#return; {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 20: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 19: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,071 INFO L290 TraceCheckUtils]: 18: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,072 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:03:57,072 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {4909#true} {4909#true} #81#return; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 15: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 14: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 13: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L272 TraceCheckUtils]: 12: Hoare triple {4909#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:57,072 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:03:57,072 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4909#true} {4909#true} #79#return; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {4909#true} assume !(0 == ~cond); {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 7: Hoare triple {4909#true} ~cond := #in~cond; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L272 TraceCheckUtils]: 6: Hoare triple {4909#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {4909#true} is VALID [2022-04-27 13:03:57,072 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:03:57,072 INFO L272 TraceCheckUtils]: 4: Hoare triple {4909#true} call #t~ret6 := main(); {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4909#true} {4909#true} #103#return; {4909#true} is VALID [2022-04-27 13:03:57,072 INFO L290 TraceCheckUtils]: 2: Hoare triple {4909#true} assume true; {4909#true} is VALID [2022-04-27 13:03:57,072 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:03:57,072 INFO L272 TraceCheckUtils]: 0: Hoare triple {4909#true} call ULTIMATE.init(); {4909#true} is VALID [2022-04-27 13:03:57,073 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:03:57,073 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:57,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [587648763] [2022-04-27 13:03:57,073 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:57,073 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [834277897] [2022-04-27 13:03:57,073 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [834277897] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:57,073 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:57,073 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 7] total 13 [2022-04-27 13:03:57,073 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1734825831] [2022-04-27 13:03:57,073 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:57,074 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:03:57,074 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:57,074 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:03:57,242 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:03:57,242 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-27 13:03:57,242 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:57,242 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-27 13:03:57,242 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-04-27 13:03:57,243 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:00,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:00,518 INFO L93 Difference]: Finished difference Result 128 states and 169 transitions. [2022-04-27 13:04:00,518 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 13:04:00,518 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:00,518 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:00,519 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:00,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 89 transitions. [2022-04-27 13:04:00,520 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:00,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 89 transitions. [2022-04-27 13:04:00,521 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 89 transitions. [2022-04-27 13:04:00,834 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:00,836 INFO L225 Difference]: With dead ends: 128 [2022-04-27 13:04:00,836 INFO L226 Difference]: Without dead ends: 126 [2022-04-27 13:04:00,836 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 147 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=88, Invalid=332, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:04:00,837 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 46 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 321 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.7s 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, 1.7s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:00,837 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 199 Invalid, 407 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 321 Invalid, 0 Unknown, 0 Unchecked, 1.7s Time] [2022-04-27 13:04:00,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 126 states. [2022-04-27 13:04:00,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 126 to 108. [2022-04-27 13:04:00,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:00,969 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:00,969 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:00,969 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:00,972 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:00,972 INFO L93 Difference]: Finished difference Result 126 states and 167 transitions. [2022-04-27 13:04:00,972 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 167 transitions. [2022-04-27 13:04:00,975 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:00,975 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:00,975 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:00,975 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:00,978 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:00,978 INFO L93 Difference]: Finished difference Result 126 states and 167 transitions. [2022-04-27 13:04:00,978 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 167 transitions. [2022-04-27 13:04:00,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:00,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:00,979 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:00,979 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:00,979 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:00,981 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 139 transitions. [2022-04-27 13:04:00,981 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 139 transitions. Word has length 80 [2022-04-27 13:04:00,982 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:00,982 INFO L495 AbstractCegarLoop]: Abstraction has 108 states and 139 transitions. [2022-04-27 13:04:00,982 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:00,982 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 139 transitions. [2022-04-27 13:04:00,982 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2022-04-27 13:04:00,982 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:00,982 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:01,000 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:01,196 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:01,196 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:01,196 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:01,196 INFO L85 PathProgramCache]: Analyzing trace with hash 901388446, now seen corresponding path program 3 times [2022-04-27 13:04:01,196 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:01,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [356000238] [2022-04-27 13:04:01,197 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:01,197 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:01,207 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:01,207 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1842487363] [2022-04-27 13:04:01,207 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:04:01,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:01,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:01,208 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:01,209 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:01,255 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 13:04:01,255 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:04:01,256 INFO L263 TraceCheckSpWp]: Trace formula consists of 164 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-27 13:04:01,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:01,269 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:04,103 INFO L272 TraceCheckUtils]: 0: Hoare triple {6034#true} call ULTIMATE.init(); {6034#true} is VALID [2022-04-27 13:04:04,104 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:04,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6034#true} {6034#true} #103#return; {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L272 TraceCheckUtils]: 4: Hoare triple {6034#true} call #t~ret6 := main(); {6034#true} is VALID [2022-04-27 13:04:04,104 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:04,104 INFO L272 TraceCheckUtils]: 6: Hoare triple {6034#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L290 TraceCheckUtils]: 7: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L290 TraceCheckUtils]: 8: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L290 TraceCheckUtils]: 9: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6034#true} {6034#true} #79#return; {6034#true} is VALID [2022-04-27 13:04:04,104 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:04,104 INFO L272 TraceCheckUtils]: 12: Hoare triple {6034#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L290 TraceCheckUtils]: 13: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L290 TraceCheckUtils]: 14: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L290 TraceCheckUtils]: 15: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,104 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {6034#true} {6034#true} #81#return; {6034#true} is VALID [2022-04-27 13:04:04,104 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:04,105 INFO L290 TraceCheckUtils]: 18: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L290 TraceCheckUtils]: 19: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6034#true} {6034#true} #83#return; {6034#true} is VALID [2022-04-27 13:04:04,105 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:04,105 INFO L290 TraceCheckUtils]: 23: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L290 TraceCheckUtils]: 24: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L290 TraceCheckUtils]: 25: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6034#true} {6034#true} #85#return; {6034#true} is VALID [2022-04-27 13:04:04,105 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:04,105 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:04,105 INFO L290 TraceCheckUtils]: 29: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,105 INFO L290 TraceCheckUtils]: 30: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,106 INFO L290 TraceCheckUtils]: 31: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,106 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:04,106 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:04,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,106 INFO L290 TraceCheckUtils]: 36: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,107 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:04,107 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:04,108 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:04,108 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:04,108 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:04,108 INFO L290 TraceCheckUtils]: 42: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,108 INFO L290 TraceCheckUtils]: 43: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,108 INFO L290 TraceCheckUtils]: 44: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,109 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:04,109 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:04,109 INFO L290 TraceCheckUtils]: 47: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,109 INFO L290 TraceCheckUtils]: 48: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,109 INFO L290 TraceCheckUtils]: 49: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,110 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:04,110 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:04,110 INFO L290 TraceCheckUtils]: 52: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,110 INFO L290 TraceCheckUtils]: 53: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,110 INFO L290 TraceCheckUtils]: 54: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,110 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:04,110 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:04,110 INFO L290 TraceCheckUtils]: 57: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,111 INFO L290 TraceCheckUtils]: 58: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,111 INFO L290 TraceCheckUtils]: 59: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,111 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:04,112 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:04,112 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:04,112 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:04,113 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:04,113 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:04,113 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:04,113 INFO L290 TraceCheckUtils]: 67: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,113 INFO L290 TraceCheckUtils]: 68: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,113 INFO L290 TraceCheckUtils]: 69: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,114 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:04,114 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:04,114 INFO L290 TraceCheckUtils]: 72: Hoare triple {6034#true} ~cond := #in~cond; {6034#true} is VALID [2022-04-27 13:04:04,114 INFO L290 TraceCheckUtils]: 73: Hoare triple {6034#true} assume !(0 == ~cond); {6034#true} is VALID [2022-04-27 13:04:04,114 INFO L290 TraceCheckUtils]: 74: Hoare triple {6034#true} assume true; {6034#true} is VALID [2022-04-27 13:04:04,115 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:04,115 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:04,115 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:04,115 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:04,115 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:04,116 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:04,117 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:04,117 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:04,117 INFO L290 TraceCheckUtils]: 83: Hoare triple {6291#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6035#false} is VALID [2022-04-27 13:04:04,117 INFO L290 TraceCheckUtils]: 84: Hoare triple {6035#false} assume !false; {6035#false} is VALID [2022-04-27 13:04:04,118 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:04,118 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:47,140 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:47,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [356000238] [2022-04-27 13:04:47,140 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:47,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1842487363] [2022-04-27 13:04:47,140 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1842487363] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:04:47,141 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:04:47,141 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 13:04:47,141 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [474434266] [2022-04-27 13:04:47,141 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:47,141 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:04:47,141 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:47,141 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:04:47,193 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:04:47,193 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:04:47,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:47,193 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:04:47,193 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:04:47,194 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:04:48,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:48,053 INFO L93 Difference]: Finished difference Result 144 states and 181 transitions. [2022-04-27 13:04:48,053 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:04:48,053 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:04:48,054 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:48,054 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:04:48,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 89 transitions. [2022-04-27 13:04:48,055 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:04:48,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 89 transitions. [2022-04-27 13:04:48,056 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 89 transitions. [2022-04-27 13:04:48,131 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:48,133 INFO L225 Difference]: With dead ends: 144 [2022-04-27 13:04:48,133 INFO L226 Difference]: Without dead ends: 142 [2022-04-27 13:04:48,134 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:04:48,134 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:04:48,134 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:04:48,135 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2022-04-27 13:04:48,300 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 139. [2022-04-27 13:04:48,300 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:48,301 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:04:48,301 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:04:48,301 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:04:48,304 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:48,304 INFO L93 Difference]: Finished difference Result 142 states and 179 transitions. [2022-04-27 13:04:48,304 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 179 transitions. [2022-04-27 13:04:48,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:48,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:48,304 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:04:48,305 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:04:48,307 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:48,307 INFO L93 Difference]: Finished difference Result 142 states and 179 transitions. [2022-04-27 13:04:48,307 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 179 transitions. [2022-04-27 13:04:48,307 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:48,308 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:48,308 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:48,308 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:48,308 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:04:48,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 139 states to 139 states and 176 transitions. [2022-04-27 13:04:48,310 INFO L78 Accepts]: Start accepts. Automaton has 139 states and 176 transitions. Word has length 85 [2022-04-27 13:04:48,310 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:48,310 INFO L495 AbstractCegarLoop]: Abstraction has 139 states and 176 transitions. [2022-04-27 13:04:48,311 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:04:48,311 INFO L276 IsEmpty]: Start isEmpty. Operand 139 states and 176 transitions. [2022-04-27 13:04:48,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-27 13:04:48,311 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:48,311 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:04:48,327 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:04:48,517 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:04:48,517 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:48,518 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:48,518 INFO L85 PathProgramCache]: Analyzing trace with hash -686534738, now seen corresponding path program 1 times [2022-04-27 13:04:48,518 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:48,518 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423137631] [2022-04-27 13:04:48,518 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:48,518 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:48,535 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:48,535 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1304972522] [2022-04-27 13:04:48,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:48,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:48,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:48,538 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:04:48,541 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:04:48,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:48,587 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-27 13:04:48,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:48,601 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:49,142 INFO L272 TraceCheckUtils]: 0: Hoare triple {7035#true} call ULTIMATE.init(); {7035#true} is VALID [2022-04-27 13:04:49,143 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:04:49,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7035#true} {7035#true} #103#return; {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L272 TraceCheckUtils]: 4: Hoare triple {7035#true} call #t~ret6 := main(); {7035#true} is VALID [2022-04-27 13:04:49,143 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:04:49,143 INFO L272 TraceCheckUtils]: 6: Hoare triple {7035#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L290 TraceCheckUtils]: 7: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L290 TraceCheckUtils]: 8: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L290 TraceCheckUtils]: 9: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7035#true} {7035#true} #79#return; {7035#true} is VALID [2022-04-27 13:04:49,143 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:04:49,143 INFO L272 TraceCheckUtils]: 12: Hoare triple {7035#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L290 TraceCheckUtils]: 13: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L290 TraceCheckUtils]: 14: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L290 TraceCheckUtils]: 15: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,143 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7035#true} {7035#true} #81#return; {7035#true} is VALID [2022-04-27 13:04:49,144 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:04:49,144 INFO L290 TraceCheckUtils]: 18: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,144 INFO L290 TraceCheckUtils]: 19: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,144 INFO L290 TraceCheckUtils]: 20: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,144 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7035#true} {7035#true} #83#return; {7035#true} is VALID [2022-04-27 13:04:49,144 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:04:49,144 INFO L290 TraceCheckUtils]: 23: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,144 INFO L290 TraceCheckUtils]: 24: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,144 INFO L290 TraceCheckUtils]: 25: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,144 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7035#true} {7035#true} #85#return; {7035#true} is VALID [2022-04-27 13:04:49,152 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:04:49,152 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:04:49,152 INFO L290 TraceCheckUtils]: 29: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,152 INFO L290 TraceCheckUtils]: 30: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,153 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:04:49,153 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:04:49,153 INFO L290 TraceCheckUtils]: 34: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,153 INFO L290 TraceCheckUtils]: 35: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,153 INFO L290 TraceCheckUtils]: 36: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,154 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:04:49,154 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:04:49,154 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:04:49,155 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:04:49,155 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:04:49,155 INFO L290 TraceCheckUtils]: 42: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,155 INFO L290 TraceCheckUtils]: 43: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,155 INFO L290 TraceCheckUtils]: 44: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,156 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:04:49,156 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:04:49,156 INFO L290 TraceCheckUtils]: 47: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,156 INFO L290 TraceCheckUtils]: 48: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,156 INFO L290 TraceCheckUtils]: 49: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,156 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:04:49,156 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:04:49,156 INFO L290 TraceCheckUtils]: 52: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,157 INFO L290 TraceCheckUtils]: 53: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,157 INFO L290 TraceCheckUtils]: 54: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,157 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:04:49,157 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:04:49,157 INFO L290 TraceCheckUtils]: 57: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,157 INFO L290 TraceCheckUtils]: 58: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,157 INFO L290 TraceCheckUtils]: 59: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,158 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:04:49,158 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:04:49,159 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:04:49,159 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:04:49,159 INFO L290 TraceCheckUtils]: 64: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,159 INFO L290 TraceCheckUtils]: 65: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,159 INFO L290 TraceCheckUtils]: 66: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,160 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:04:49,160 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:04:49,160 INFO L290 TraceCheckUtils]: 69: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,160 INFO L290 TraceCheckUtils]: 70: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,160 INFO L290 TraceCheckUtils]: 71: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,160 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:04:49,160 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:04:49,161 INFO L290 TraceCheckUtils]: 74: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,161 INFO L290 TraceCheckUtils]: 75: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,161 INFO L290 TraceCheckUtils]: 76: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,161 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:04:49,161 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:04:49,161 INFO L290 TraceCheckUtils]: 79: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:49,161 INFO L290 TraceCheckUtils]: 80: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:49,161 INFO L290 TraceCheckUtils]: 81: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:49,162 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:04:49,162 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:04:49,163 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:04:49,163 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:04:49,164 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:04:49,164 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:04:49,164 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:04:49,165 INFO L290 TraceCheckUtils]: 89: Hoare triple {7310#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7036#false} is VALID [2022-04-27 13:04:49,165 INFO L290 TraceCheckUtils]: 90: Hoare triple {7036#false} assume !false; {7036#false} is VALID [2022-04-27 13:04:49,165 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:04:49,165 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:49,668 INFO L290 TraceCheckUtils]: 90: Hoare triple {7036#false} assume !false; {7036#false} is VALID [2022-04-27 13:04:49,669 INFO L290 TraceCheckUtils]: 89: Hoare triple {7310#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7036#false} is VALID [2022-04-27 13:04:49,669 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:04:49,669 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:04:49,670 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:04:49,670 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:04:50,874 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:04:50,875 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:04:50,876 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:04:50,876 INFO L290 TraceCheckUtils]: 81: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:50,876 INFO L290 TraceCheckUtils]: 80: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:50,876 INFO L290 TraceCheckUtils]: 79: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:50,876 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:04:50,876 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:04:50,877 INFO L290 TraceCheckUtils]: 76: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:50,877 INFO L290 TraceCheckUtils]: 75: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:50,877 INFO L290 TraceCheckUtils]: 74: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:50,877 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:04:50,877 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:04:50,877 INFO L290 TraceCheckUtils]: 71: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:50,877 INFO L290 TraceCheckUtils]: 70: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:50,877 INFO L290 TraceCheckUtils]: 69: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:50,877 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:04:50,878 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:04:50,878 INFO L290 TraceCheckUtils]: 66: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:50,878 INFO L290 TraceCheckUtils]: 65: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:50,878 INFO L290 TraceCheckUtils]: 64: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:50,878 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:04:50,879 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:04:51,413 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:04:51,414 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:04:51,414 INFO L290 TraceCheckUtils]: 59: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,414 INFO L290 TraceCheckUtils]: 58: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,414 INFO L290 TraceCheckUtils]: 57: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,414 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:04:51,414 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:04:51,415 INFO L290 TraceCheckUtils]: 54: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,415 INFO L290 TraceCheckUtils]: 53: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,415 INFO L290 TraceCheckUtils]: 52: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,415 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:04:51,415 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:04:51,415 INFO L290 TraceCheckUtils]: 49: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,415 INFO L290 TraceCheckUtils]: 48: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,415 INFO L290 TraceCheckUtils]: 47: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,415 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:04:51,416 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:04:51,416 INFO L290 TraceCheckUtils]: 44: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,416 INFO L290 TraceCheckUtils]: 43: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,416 INFO L290 TraceCheckUtils]: 42: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,416 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:04:51,417 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:04:51,417 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:04:51,418 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:04:51,418 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:04:51,418 INFO L290 TraceCheckUtils]: 36: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,419 INFO L290 TraceCheckUtils]: 35: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,420 INFO L290 TraceCheckUtils]: 34: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,420 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:04:51,421 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:04:51,421 INFO L290 TraceCheckUtils]: 31: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,421 INFO L290 TraceCheckUtils]: 30: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,421 INFO L290 TraceCheckUtils]: 29: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,421 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:04:51,422 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:04:51,422 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7035#true} {7035#true} #85#return; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 25: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 24: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 23: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,422 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:04:51,422 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7035#true} {7035#true} #83#return; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 20: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 19: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 18: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,422 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:04:51,422 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {7035#true} {7035#true} #81#return; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 15: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 14: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L272 TraceCheckUtils]: 12: Hoare triple {7035#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:04:51,422 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:04:51,422 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7035#true} {7035#true} #79#return; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 9: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 8: Hoare triple {7035#true} assume !(0 == ~cond); {7035#true} is VALID [2022-04-27 13:04:51,422 INFO L290 TraceCheckUtils]: 7: Hoare triple {7035#true} ~cond := #in~cond; {7035#true} is VALID [2022-04-27 13:04:51,423 INFO L272 TraceCheckUtils]: 6: Hoare triple {7035#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {7035#true} is VALID [2022-04-27 13:04:51,423 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:04:51,423 INFO L272 TraceCheckUtils]: 4: Hoare triple {7035#true} call #t~ret6 := main(); {7035#true} is VALID [2022-04-27 13:04:51,423 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7035#true} {7035#true} #103#return; {7035#true} is VALID [2022-04-27 13:04:51,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {7035#true} assume true; {7035#true} is VALID [2022-04-27 13:04:51,423 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:04:51,423 INFO L272 TraceCheckUtils]: 0: Hoare triple {7035#true} call ULTIMATE.init(); {7035#true} is VALID [2022-04-27 13:04:51,423 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:04:51,423 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:51,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1423137631] [2022-04-27 13:04:51,423 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:51,423 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1304972522] [2022-04-27 13:04:51,423 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1304972522] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:51,423 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:51,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-27 13:04:51,424 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [863974177] [2022-04-27 13:04:51,424 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:51,424 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:04:51,424 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:51,425 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:04:51,760 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:04:51,760 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:04:51,760 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:51,760 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:04:51,760 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:04:51,761 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:04:56,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:56,669 INFO L93 Difference]: Finished difference Result 228 states and 311 transitions. [2022-04-27 13:04:56,669 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-27 13:04:56,669 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:04:56,669 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:56,669 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:04:56,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 176 transitions. [2022-04-27 13:04:56,672 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:04:56,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 176 transitions. [2022-04-27 13:04:56,674 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 176 transitions. [2022-04-27 13:04:59,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 176 edges. 175 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:59,399 INFO L225 Difference]: With dead ends: 228 [2022-04-27 13:04:59,399 INFO L226 Difference]: Without dead ends: 220 [2022-04-27 13:04:59,399 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=178, Invalid=692, Unknown=0, NotChecked=0, Total=870 [2022-04-27 13:04:59,400 INFO L413 NwaCegarLoop]: 78 mSDtfsCounter, 50 mSDsluCounter, 259 mSDsCounter, 0 mSdLazyCounter, 598 mSolverCounterSat, 100 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s 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, 2.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:59,400 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 337 Invalid, 698 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [100 Valid, 598 Invalid, 0 Unknown, 0 Unchecked, 2.2s Time] [2022-04-27 13:04:59,400 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 220 states. [2022-04-27 13:04:59,667 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 220 to 216. [2022-04-27 13:04:59,667 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:59,667 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:04:59,668 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:04:59,668 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:04:59,672 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:59,672 INFO L93 Difference]: Finished difference Result 220 states and 301 transitions. [2022-04-27 13:04:59,673 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 301 transitions. [2022-04-27 13:04:59,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:59,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:59,674 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:04:59,674 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:04:59,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:59,678 INFO L93 Difference]: Finished difference Result 220 states and 301 transitions. [2022-04-27 13:04:59,678 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 301 transitions. [2022-04-27 13:04:59,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:59,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:59,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:59,679 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:59,679 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:04:59,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 216 states to 216 states and 297 transitions. [2022-04-27 13:04:59,684 INFO L78 Accepts]: Start accepts. Automaton has 216 states and 297 transitions. Word has length 91 [2022-04-27 13:04:59,684 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:59,684 INFO L495 AbstractCegarLoop]: Abstraction has 216 states and 297 transitions. [2022-04-27 13:04:59,685 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:04:59,685 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 297 transitions. [2022-04-27 13:04:59,685 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-27 13:04:59,685 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:59,685 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:04:59,701 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:04:59,891 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:04:59,891 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:59,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:59,892 INFO L85 PathProgramCache]: Analyzing trace with hash -428114403, now seen corresponding path program 1 times [2022-04-27 13:04:59,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:59,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2078493827] [2022-04-27 13:04:59,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:59,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:59,902 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:59,902 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [30787976] [2022-04-27 13:04:59,902 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:59,902 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:59,902 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:59,903 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:04:59,904 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:04:59,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:59,960 INFO L263 TraceCheckSpWp]: Trace formula consists of 264 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-27 13:04:59,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:59,981 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:00,866 INFO L272 TraceCheckUtils]: 0: Hoare triple {8765#true} call ULTIMATE.init(); {8765#true} is VALID [2022-04-27 13:05:00,866 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:00,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8765#true} {8765#true} #103#return; {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L272 TraceCheckUtils]: 4: Hoare triple {8765#true} call #t~ret6 := main(); {8765#true} is VALID [2022-04-27 13:05:00,866 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:00,866 INFO L272 TraceCheckUtils]: 6: Hoare triple {8765#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8765#true} {8765#true} #79#return; {8765#true} is VALID [2022-04-27 13:05:00,866 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:00,866 INFO L272 TraceCheckUtils]: 12: Hoare triple {8765#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:00,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L290 TraceCheckUtils]: 15: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {8765#true} {8765#true} #81#return; {8765#true} is VALID [2022-04-27 13:05:00,867 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:00,867 INFO L290 TraceCheckUtils]: 18: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L290 TraceCheckUtils]: 19: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L290 TraceCheckUtils]: 20: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8765#true} {8765#true} #83#return; {8765#true} is VALID [2022-04-27 13:05:00,867 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:00,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L290 TraceCheckUtils]: 25: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,867 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8765#true} {8765#true} #85#return; {8765#true} is VALID [2022-04-27 13:05:00,868 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))} is VALID [2022-04-27 13:05:00,868 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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:00,868 INFO L290 TraceCheckUtils]: 29: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,868 INFO L290 TraceCheckUtils]: 30: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,868 INFO L290 TraceCheckUtils]: 31: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,869 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))} #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))} is VALID [2022-04-27 13:05:00,869 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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8765#true} is VALID [2022-04-27 13:05:00,869 INFO L290 TraceCheckUtils]: 34: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,869 INFO L290 TraceCheckUtils]: 35: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,869 INFO L290 TraceCheckUtils]: 36: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,870 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))} #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))} is VALID [2022-04-27 13:05:00,870 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))} 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))} is VALID [2022-04-27 13:05:00,870 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))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8888#(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))} is VALID [2022-04-27 13:05:00,871 INFO L290 TraceCheckUtils]: 40: Hoare triple {8888#(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))} assume !false; {8888#(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))} is VALID [2022-04-27 13:05:00,871 INFO L272 TraceCheckUtils]: 41: Hoare triple {8888#(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))} 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:00,871 INFO L290 TraceCheckUtils]: 42: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,871 INFO L290 TraceCheckUtils]: 43: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,871 INFO L290 TraceCheckUtils]: 44: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,872 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {8765#true} {8888#(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))} #91#return; {8888#(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))} is VALID [2022-04-27 13:05:00,872 INFO L272 TraceCheckUtils]: 46: Hoare triple {8888#(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))} 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:00,872 INFO L290 TraceCheckUtils]: 47: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,872 INFO L290 TraceCheckUtils]: 48: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,872 INFO L290 TraceCheckUtils]: 49: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,873 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {8765#true} {8888#(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))} #93#return; {8888#(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))} is VALID [2022-04-27 13:05:00,873 INFO L272 TraceCheckUtils]: 51: Hoare triple {8888#(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))} 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:00,873 INFO L290 TraceCheckUtils]: 52: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,873 INFO L290 TraceCheckUtils]: 53: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,873 INFO L290 TraceCheckUtils]: 54: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,874 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {8765#true} {8888#(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))} #95#return; {8888#(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))} is VALID [2022-04-27 13:05:00,874 INFO L272 TraceCheckUtils]: 56: Hoare triple {8888#(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))} 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:00,874 INFO L290 TraceCheckUtils]: 57: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,874 INFO L290 TraceCheckUtils]: 58: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,874 INFO L290 TraceCheckUtils]: 59: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,875 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {8765#true} {8888#(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))} #97#return; {8888#(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))} is VALID [2022-04-27 13:05:00,875 INFO L290 TraceCheckUtils]: 61: Hoare triple {8888#(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))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} is VALID [2022-04-27 13:05:00,876 INFO L290 TraceCheckUtils]: 62: Hoare triple {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} assume !false; {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} is VALID [2022-04-27 13:05:00,876 INFO L272 TraceCheckUtils]: 63: Hoare triple {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} 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:00,876 INFO L290 TraceCheckUtils]: 64: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,876 INFO L290 TraceCheckUtils]: 65: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,876 INFO L290 TraceCheckUtils]: 66: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,876 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {8765#true} {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} #91#return; {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} is VALID [2022-04-27 13:05:00,877 INFO L272 TraceCheckUtils]: 68: Hoare triple {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} 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:00,877 INFO L290 TraceCheckUtils]: 69: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,877 INFO L290 TraceCheckUtils]: 70: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,877 INFO L290 TraceCheckUtils]: 71: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,877 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {8765#true} {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} #93#return; {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} is VALID [2022-04-27 13:05:00,878 INFO L272 TraceCheckUtils]: 73: Hoare triple {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} 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:00,878 INFO L290 TraceCheckUtils]: 74: Hoare triple {8765#true} ~cond := #in~cond; {8995#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:00,878 INFO L290 TraceCheckUtils]: 75: Hoare triple {8995#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:00,878 INFO L290 TraceCheckUtils]: 76: Hoare triple {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:00,879 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} #95#return; {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} is VALID [2022-04-27 13:05:00,879 INFO L272 TraceCheckUtils]: 78: Hoare triple {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} 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:00,879 INFO L290 TraceCheckUtils]: 79: Hoare triple {8765#true} ~cond := #in~cond; {8995#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:00,880 INFO L290 TraceCheckUtils]: 80: Hoare triple {8995#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:00,880 INFO L290 TraceCheckUtils]: 81: Hoare triple {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:00,881 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} {8955#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= (+ (- 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)))} #97#return; {9021#(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_~y~0)))} is VALID [2022-04-27 13:05:00,881 INFO L290 TraceCheckUtils]: 83: Hoare triple {9021#(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_~y~0)))} assume !(~c~0 >= ~b~0); {9021#(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_~y~0)))} is VALID [2022-04-27 13:05:00,882 INFO L290 TraceCheckUtils]: 84: Hoare triple {9021#(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_~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; {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,882 INFO L290 TraceCheckUtils]: 85: Hoare triple {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,883 INFO L290 TraceCheckUtils]: 86: Hoare triple {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ 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; {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,883 INFO L290 TraceCheckUtils]: 87: Hoare triple {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,883 INFO L272 TraceCheckUtils]: 88: Hoare triple {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ 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:00,883 INFO L290 TraceCheckUtils]: 89: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,883 INFO L290 TraceCheckUtils]: 90: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,883 INFO L290 TraceCheckUtils]: 91: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,884 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {8765#true} {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,884 INFO L272 TraceCheckUtils]: 93: Hoare triple {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ 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:00,884 INFO L290 TraceCheckUtils]: 94: Hoare triple {8765#true} ~cond := #in~cond; {8765#true} is VALID [2022-04-27 13:05:00,884 INFO L290 TraceCheckUtils]: 95: Hoare triple {8765#true} assume !(0 == ~cond); {8765#true} is VALID [2022-04-27 13:05:00,884 INFO L290 TraceCheckUtils]: 96: Hoare triple {8765#true} assume true; {8765#true} is VALID [2022-04-27 13:05:00,885 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {8765#true} {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,885 INFO L272 TraceCheckUtils]: 98: Hoare triple {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ 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:00,885 INFO L290 TraceCheckUtils]: 99: Hoare triple {8765#true} ~cond := #in~cond; {8995#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:00,885 INFO L290 TraceCheckUtils]: 100: Hoare triple {8995#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:00,886 INFO L290 TraceCheckUtils]: 101: Hoare triple {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:00,886 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {8999#(not (= |__VERIFIER_assert_#in~cond| 0))} {9028#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {9083#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:05:00,890 INFO L272 TraceCheckUtils]: 103: Hoare triple {9083#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ 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:00,890 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:00,891 INFO L290 TraceCheckUtils]: 105: Hoare triple {9091#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8766#false} is VALID [2022-04-27 13:05:00,891 INFO L290 TraceCheckUtils]: 106: Hoare triple {8766#false} assume !false; {8766#false} is VALID [2022-04-27 13:05:00,891 INFO L134 CoverageAnalysis]: Checked inductivity of 320 backedges. 79 proven. 33 refuted. 0 times theorem prover too weak. 208 trivial. 0 not checked. [2022-04-27 13:05:00,891 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:05:28,964 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 13:05:58,457 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:05:58,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2078493827] [2022-04-27 13:05:58,458 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:05:58,458 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [30787976] [2022-04-27 13:05:58,458 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [30787976] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:05:58,458 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:05:58,458 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-27 13:05:58,458 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1935172002] [2022-04-27 13:05:58,458 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:05:58,458 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) Word has length 107 [2022-04-27 13:05:58,459 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:05:58,459 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 13:05:58,519 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:05:58,519 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:05:58,519 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:05:58,519 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:05:58,519 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=211, Unknown=0, NotChecked=0, Total=272 [2022-04-27 13:05:58,519 INFO L87 Difference]: Start difference. First operand 216 states and 297 transitions. Second operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 13:06:00,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:00,588 INFO L93 Difference]: Finished difference Result 226 states and 306 transitions. [2022-04-27 13:06:00,588 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:06:00,588 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) Word has length 107 [2022-04-27 13:06:00,588 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:00,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 13:06:00,589 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 108 transitions. [2022-04-27 13:06:00,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 13:06:00,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 108 transitions. [2022-04-27 13:06:00,591 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 108 transitions. [2022-04-27 13:06:00,717 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:06:00,721 INFO L225 Difference]: With dead ends: 226 [2022-04-27 13:06:00,721 INFO L226 Difference]: Without dead ends: 224 [2022-04-27 13:06:00,721 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 135 GetRequests, 114 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=91, Invalid=329, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:06:00,721 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 27 mSDsluCounter, 195 mSDsCounter, 0 mSdLazyCounter, 470 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 243 SdHoareTripleChecker+Invalid, 497 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 470 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:06:00,722 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 243 Invalid, 497 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 470 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-27 13:06:00,722 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 224 states. [2022-04-27 13:06:01,013 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 224 to 220. [2022-04-27 13:06:01,014 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:01,014 INFO L82 GeneralOperation]: Start isEquivalent. First operand 224 states. Second operand has 220 states, 119 states have (on average 1.1764705882352942) internal successors, (140), 120 states have internal predecessors, (140), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:06:01,014 INFO L74 IsIncluded]: Start isIncluded. First operand 224 states. Second operand has 220 states, 119 states have (on average 1.1764705882352942) internal successors, (140), 120 states have internal predecessors, (140), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:06:01,015 INFO L87 Difference]: Start difference. First operand 224 states. Second operand has 220 states, 119 states have (on average 1.1764705882352942) internal successors, (140), 120 states have internal predecessors, (140), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:06:01,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:01,020 INFO L93 Difference]: Finished difference Result 224 states and 304 transitions. [2022-04-27 13:06:01,020 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 304 transitions. [2022-04-27 13:06:01,020 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:01,020 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:01,021 INFO L74 IsIncluded]: Start isIncluded. First operand has 220 states, 119 states have (on average 1.1764705882352942) internal successors, (140), 120 states have internal predecessors, (140), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) Second operand 224 states. [2022-04-27 13:06:01,021 INFO L87 Difference]: Start difference. First operand has 220 states, 119 states have (on average 1.1764705882352942) internal successors, (140), 120 states have internal predecessors, (140), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) Second operand 224 states. [2022-04-27 13:06:01,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:01,025 INFO L93 Difference]: Finished difference Result 224 states and 304 transitions. [2022-04-27 13:06:01,025 INFO L276 IsEmpty]: Start isEmpty. Operand 224 states and 304 transitions. [2022-04-27 13:06:01,026 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:01,026 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:01,026 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:01,026 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:01,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 220 states, 119 states have (on average 1.1764705882352942) internal successors, (140), 120 states have internal predecessors, (140), 81 states have call successors, (81), 20 states have call predecessors, (81), 19 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-04-27 13:06:01,035 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 300 transitions. [2022-04-27 13:06:01,035 INFO L78 Accepts]: Start accepts. Automaton has 220 states and 300 transitions. Word has length 107 [2022-04-27 13:06:01,035 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:01,035 INFO L495 AbstractCegarLoop]: Abstraction has 220 states and 300 transitions. [2022-04-27 13:06:01,036 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 10 states have internal predecessors, (27), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 7 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 13:06:01,036 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 300 transitions. [2022-04-27 13:06:01,036 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-04-27 13:06:01,036 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:01,036 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 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] [2022-04-27 13:06:01,054 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:06:01,254 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:06:01,255 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:01,255 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:01,255 INFO L85 PathProgramCache]: Analyzing trace with hash -1979573154, now seen corresponding path program 4 times [2022-04-27 13:06:01,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:01,255 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [970124145] [2022-04-27 13:06:01,255 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:01,255 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:01,265 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:01,266 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1932911816] [2022-04-27 13:06:01,266 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 13:06:01,266 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:01,266 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:01,266 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:06:01,267 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:06:01,313 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 13:06:01,314 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:06:01,314 INFO L263 TraceCheckSpWp]: Trace formula consists of 241 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:06:01,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:01,328 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:01,534 INFO L272 TraceCheckUtils]: 0: Hoare triple {10333#true} call ULTIMATE.init(); {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {10333#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); {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10333#true} {10333#true} #103#return; {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L272 TraceCheckUtils]: 4: Hoare triple {10333#true} call #t~ret6 := main(); {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L290 TraceCheckUtils]: 5: Hoare triple {10333#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; {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L272 TraceCheckUtils]: 6: Hoare triple {10333#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,534 INFO L290 TraceCheckUtils]: 7: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 9: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10333#true} {10333#true} #79#return; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 11: Hoare triple {10333#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L272 TraceCheckUtils]: 12: Hoare triple {10333#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 13: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 14: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 15: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {10333#true} {10333#true} #81#return; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L272 TraceCheckUtils]: 17: Hoare triple {10333#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 18: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 19: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 20: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10333#true} {10333#true} #83#return; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L272 TraceCheckUtils]: 22: Hoare triple {10333#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 24: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 25: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10333#true} {10333#true} #85#return; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 27: Hoare triple {10333#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; {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L272 TraceCheckUtils]: 28: Hoare triple {10333#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,535 INFO L290 TraceCheckUtils]: 29: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 30: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 31: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {10333#true} {10333#true} #87#return; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L272 TraceCheckUtils]: 33: Hoare triple {10333#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 34: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 35: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 36: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {10333#true} {10333#true} #89#return; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 38: Hoare triple {10333#true} assume !false; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 39: Hoare triple {10333#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 40: Hoare triple {10333#true} assume !false; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L272 TraceCheckUtils]: 41: Hoare triple {10333#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 42: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 43: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 44: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {10333#true} {10333#true} #91#return; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L272 TraceCheckUtils]: 46: Hoare triple {10333#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 47: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 48: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 49: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {10333#true} {10333#true} #93#return; {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L272 TraceCheckUtils]: 51: Hoare triple {10333#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,536 INFO L290 TraceCheckUtils]: 52: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 53: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 54: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {10333#true} {10333#true} #95#return; {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L272 TraceCheckUtils]: 56: Hoare triple {10333#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)); {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 57: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 58: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 59: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {10333#true} {10333#true} #97#return; {10333#true} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 61: Hoare triple {10333#true} assume !(~c~0 >= ~b~0); {10521#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-27 13:06:01,537 INFO L290 TraceCheckUtils]: 62: Hoare triple {10521#(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; {10525#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:06:01,538 INFO L290 TraceCheckUtils]: 63: Hoare triple {10525#(< main_~b~0 main_~a~0)} assume !false; {10525#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:06:01,538 INFO L290 TraceCheckUtils]: 64: Hoare triple {10525#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10532#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:06:01,538 INFO L290 TraceCheckUtils]: 65: Hoare triple {10532#(< main_~b~0 main_~c~0)} assume !false; {10532#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:06:01,538 INFO L272 TraceCheckUtils]: 66: Hoare triple {10532#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,538 INFO L290 TraceCheckUtils]: 67: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,538 INFO L290 TraceCheckUtils]: 68: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,538 INFO L290 TraceCheckUtils]: 69: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,539 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {10333#true} {10532#(< main_~b~0 main_~c~0)} #91#return; {10532#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:06:01,539 INFO L272 TraceCheckUtils]: 71: Hoare triple {10532#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,539 INFO L290 TraceCheckUtils]: 72: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,539 INFO L290 TraceCheckUtils]: 73: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,540 INFO L290 TraceCheckUtils]: 74: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,540 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {10333#true} {10532#(< main_~b~0 main_~c~0)} #93#return; {10532#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:06:01,540 INFO L272 TraceCheckUtils]: 76: Hoare triple {10532#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10333#true} is VALID [2022-04-27 13:06:01,540 INFO L290 TraceCheckUtils]: 77: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,540 INFO L290 TraceCheckUtils]: 78: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,540 INFO L290 TraceCheckUtils]: 79: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,541 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {10333#true} {10532#(< main_~b~0 main_~c~0)} #95#return; {10532#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:06:01,541 INFO L272 TraceCheckUtils]: 81: Hoare triple {10532#(< 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)); {10333#true} is VALID [2022-04-27 13:06:01,541 INFO L290 TraceCheckUtils]: 82: Hoare triple {10333#true} ~cond := #in~cond; {10333#true} is VALID [2022-04-27 13:06:01,541 INFO L290 TraceCheckUtils]: 83: Hoare triple {10333#true} assume !(0 == ~cond); {10333#true} is VALID [2022-04-27 13:06:01,541 INFO L290 TraceCheckUtils]: 84: Hoare triple {10333#true} assume true; {10333#true} is VALID [2022-04-27 13:06:01,541 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {10333#true} {10532#(< main_~b~0 main_~c~0)} #97#return; {10532#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 86: Hoare triple {10532#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 87: Hoare triple {10334#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; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 88: Hoare triple {10334#false} assume !false; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 89: Hoare triple {10334#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 90: Hoare triple {10334#false} assume !false; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L272 TraceCheckUtils]: 91: Hoare triple {10334#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 92: Hoare triple {10334#false} ~cond := #in~cond; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 93: Hoare triple {10334#false} assume !(0 == ~cond); {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 94: Hoare triple {10334#false} assume true; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {10334#false} {10334#false} #91#return; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L272 TraceCheckUtils]: 96: Hoare triple {10334#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 97: Hoare triple {10334#false} ~cond := #in~cond; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 98: Hoare triple {10334#false} assume !(0 == ~cond); {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L290 TraceCheckUtils]: 99: Hoare triple {10334#false} assume true; {10334#false} is VALID [2022-04-27 13:06:01,542 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {10334#false} {10334#false} #93#return; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L272 TraceCheckUtils]: 101: Hoare triple {10334#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L290 TraceCheckUtils]: 102: Hoare triple {10334#false} ~cond := #in~cond; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L290 TraceCheckUtils]: 103: Hoare triple {10334#false} assume !(0 == ~cond); {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L290 TraceCheckUtils]: 104: Hoare triple {10334#false} assume true; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L284 TraceCheckUtils]: 105: Hoare quadruple {10334#false} {10334#false} #95#return; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L272 TraceCheckUtils]: 106: Hoare triple {10334#false} 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)); {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L290 TraceCheckUtils]: 107: Hoare triple {10334#false} ~cond := #in~cond; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L290 TraceCheckUtils]: 108: Hoare triple {10334#false} assume 0 == ~cond; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L290 TraceCheckUtils]: 109: Hoare triple {10334#false} assume !false; {10334#false} is VALID [2022-04-27 13:06:01,543 INFO L134 CoverageAnalysis]: Checked inductivity of 325 backedges. 135 proven. 0 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-27 13:06:01,543 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:06:01,543 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:01,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [970124145] [2022-04-27 13:06:01,543 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:01,543 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1932911816] [2022-04-27 13:06:01,543 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1932911816] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:06:01,543 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:06:01,544 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:06:01,544 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [726883885] [2022-04-27 13:06:01,544 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:06:01,544 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) Word has length 110 [2022-04-27 13:06:01,544 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:01,544 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) [2022-04-27 13:06:01,593 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:06:01,593 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:06:01,593 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:01,593 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:06:01,594 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:06:01,594 INFO L87 Difference]: Start difference. First operand 220 states and 300 transitions. Second operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) [2022-04-27 13:06:02,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:02,074 INFO L93 Difference]: Finished difference Result 281 states and 378 transitions. [2022-04-27 13:06:02,074 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:06:02,074 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) Word has length 110 [2022-04-27 13:06:02,074 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:02,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) [2022-04-27 13:06:02,075 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-27 13:06:02,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) [2022-04-27 13:06:02,076 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 90 transitions. [2022-04-27 13:06:02,076 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 90 transitions. [2022-04-27 13:06:02,153 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:06:02,156 INFO L225 Difference]: With dead ends: 281 [2022-04-27 13:06:02,156 INFO L226 Difference]: Without dead ends: 201 [2022-04-27 13:06:02,157 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 111 GetRequests, 106 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:06:02,157 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:06:02,157 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:06:02,158 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 201 states. [2022-04-27 13:06:02,352 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 201 to 154. [2022-04-27 13:06:02,352 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:02,352 INFO L82 GeneralOperation]: Start isEquivalent. First operand 201 states. Second operand has 154 states, 84 states have (on average 1.130952380952381) internal successors, (95), 85 states have internal predecessors, (95), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:02,353 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand has 154 states, 84 states have (on average 1.130952380952381) internal successors, (95), 85 states have internal predecessors, (95), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:02,353 INFO L87 Difference]: Start difference. First operand 201 states. Second operand has 154 states, 84 states have (on average 1.130952380952381) internal successors, (95), 85 states have internal predecessors, (95), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:02,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:02,357 INFO L93 Difference]: Finished difference Result 201 states and 262 transitions. [2022-04-27 13:06:02,357 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 262 transitions. [2022-04-27 13:06:02,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:02,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:02,357 INFO L74 IsIncluded]: Start isIncluded. First operand has 154 states, 84 states have (on average 1.130952380952381) internal successors, (95), 85 states have internal predecessors, (95), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 201 states. [2022-04-27 13:06:02,358 INFO L87 Difference]: Start difference. First operand has 154 states, 84 states have (on average 1.130952380952381) internal successors, (95), 85 states have internal predecessors, (95), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 201 states. [2022-04-27 13:06:02,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:02,361 INFO L93 Difference]: Finished difference Result 201 states and 262 transitions. [2022-04-27 13:06:02,361 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 262 transitions. [2022-04-27 13:06:02,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:02,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:02,362 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:02,362 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:02,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 154 states, 84 states have (on average 1.130952380952381) internal successors, (95), 85 states have internal predecessors, (95), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:02,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 199 transitions. [2022-04-27 13:06:02,365 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 199 transitions. Word has length 110 [2022-04-27 13:06:02,365 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:02,365 INFO L495 AbstractCegarLoop]: Abstraction has 154 states and 199 transitions. [2022-04-27 13:06:02,365 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (18), 3 states have call predecessors, (18), 3 states have call successors, (18) [2022-04-27 13:06:02,365 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 199 transitions. [2022-04-27 13:06:02,366 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2022-04-27 13:06:02,366 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:02,366 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 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:06:02,384 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:06:02,574 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:06:02,574 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:02,574 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:02,575 INFO L85 PathProgramCache]: Analyzing trace with hash -2138166692, now seen corresponding path program 2 times [2022-04-27 13:06:02,575 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:02,575 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [752058402] [2022-04-27 13:06:02,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:02,575 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:02,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:02,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1097575709] [2022-04-27 13:06:02,585 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:06:02,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:02,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:02,586 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:06:02,587 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:06:02,646 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:06:02,647 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:06:02,648 INFO L263 TraceCheckSpWp]: Trace formula consists of 306 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-27 13:06:02,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:02,671 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:03,650 INFO L272 TraceCheckUtils]: 0: Hoare triple {11750#true} call ULTIMATE.init(); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {11750#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); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11750#true} {11750#true} #103#return; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {11750#true} call #t~ret6 := main(); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {11750#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; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L272 TraceCheckUtils]: 6: Hoare triple {11750#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 8: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 9: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11750#true} {11750#true} #79#return; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 11: Hoare triple {11750#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L272 TraceCheckUtils]: 12: Hoare triple {11750#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 13: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 14: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {11750#true} {11750#true} #81#return; {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L272 TraceCheckUtils]: 17: Hoare triple {11750#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,651 INFO L290 TraceCheckUtils]: 18: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 19: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 20: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11750#true} {11750#true} #83#return; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L272 TraceCheckUtils]: 22: Hoare triple {11750#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 23: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 24: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 25: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11750#true} {11750#true} #85#return; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 27: Hoare triple {11750#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; {11836#(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:06:03,652 INFO L272 TraceCheckUtils]: 28: Hoare triple {11836#(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)); {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 29: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 30: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,652 INFO L290 TraceCheckUtils]: 31: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,653 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {11750#true} {11836#(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; {11836#(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:06:03,653 INFO L272 TraceCheckUtils]: 33: Hoare triple {11836#(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)); {11750#true} is VALID [2022-04-27 13:06:03,653 INFO L290 TraceCheckUtils]: 34: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,653 INFO L290 TraceCheckUtils]: 35: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,653 INFO L290 TraceCheckUtils]: 36: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,654 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {11750#true} {11836#(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; {11836#(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:06:03,654 INFO L290 TraceCheckUtils]: 38: Hoare triple {11836#(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; {11836#(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:06:03,655 INFO L290 TraceCheckUtils]: 39: Hoare triple {11836#(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; {11836#(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:06:03,655 INFO L290 TraceCheckUtils]: 40: Hoare triple {11836#(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; {11836#(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:06:03,655 INFO L272 TraceCheckUtils]: 41: Hoare triple {11836#(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 __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,655 INFO L290 TraceCheckUtils]: 42: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,655 INFO L290 TraceCheckUtils]: 43: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,655 INFO L290 TraceCheckUtils]: 44: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,656 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {11750#true} {11836#(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))} #91#return; {11836#(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:06:03,656 INFO L272 TraceCheckUtils]: 46: Hoare triple {11836#(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 __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,656 INFO L290 TraceCheckUtils]: 47: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,656 INFO L290 TraceCheckUtils]: 48: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,656 INFO L290 TraceCheckUtils]: 49: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,657 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {11750#true} {11836#(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))} #93#return; {11836#(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:06:03,657 INFO L272 TraceCheckUtils]: 51: Hoare triple {11836#(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 __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,657 INFO L290 TraceCheckUtils]: 52: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,657 INFO L290 TraceCheckUtils]: 53: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,657 INFO L290 TraceCheckUtils]: 54: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,657 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {11750#true} {11836#(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))} #95#return; {11836#(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:06:03,657 INFO L272 TraceCheckUtils]: 56: Hoare triple {11836#(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 __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)); {11750#true} is VALID [2022-04-27 13:06:03,657 INFO L290 TraceCheckUtils]: 57: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,658 INFO L290 TraceCheckUtils]: 58: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,658 INFO L290 TraceCheckUtils]: 59: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,658 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {11750#true} {11836#(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))} #97#return; {11836#(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:06:03,659 INFO L290 TraceCheckUtils]: 61: Hoare triple {11836#(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 !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {11836#(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:06:03,659 INFO L290 TraceCheckUtils]: 62: Hoare triple {11836#(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; {11836#(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:06:03,659 INFO L272 TraceCheckUtils]: 63: Hoare triple {11836#(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 __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,659 INFO L290 TraceCheckUtils]: 64: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,659 INFO L290 TraceCheckUtils]: 65: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,659 INFO L290 TraceCheckUtils]: 66: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,660 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {11750#true} {11836#(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))} #91#return; {11836#(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:06:03,660 INFO L272 TraceCheckUtils]: 68: Hoare triple {11836#(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 __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,660 INFO L290 TraceCheckUtils]: 69: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,660 INFO L290 TraceCheckUtils]: 70: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,660 INFO L290 TraceCheckUtils]: 71: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,661 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {11750#true} {11836#(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))} #93#return; {11836#(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:06:03,661 INFO L272 TraceCheckUtils]: 73: Hoare triple {11836#(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 __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,661 INFO L290 TraceCheckUtils]: 74: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,661 INFO L290 TraceCheckUtils]: 75: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,661 INFO L290 TraceCheckUtils]: 76: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,661 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {11750#true} {11836#(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))} #95#return; {11836#(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:06:03,661 INFO L272 TraceCheckUtils]: 78: Hoare triple {11836#(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 __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)); {11750#true} is VALID [2022-04-27 13:06:03,661 INFO L290 TraceCheckUtils]: 79: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,662 INFO L290 TraceCheckUtils]: 80: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,662 INFO L290 TraceCheckUtils]: 81: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,662 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {11750#true} {11836#(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))} #97#return; {11836#(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:06:03,663 INFO L290 TraceCheckUtils]: 83: Hoare triple {11836#(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 !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {11836#(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:06:03,663 INFO L290 TraceCheckUtils]: 84: Hoare triple {11836#(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; {11836#(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:06:03,663 INFO L272 TraceCheckUtils]: 85: Hoare triple {11836#(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 __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11750#true} is VALID [2022-04-27 13:06:03,663 INFO L290 TraceCheckUtils]: 86: Hoare triple {11750#true} ~cond := #in~cond; {12014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:03,663 INFO L290 TraceCheckUtils]: 87: Hoare triple {12014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:03,664 INFO L290 TraceCheckUtils]: 88: Hoare triple {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:03,665 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} {11836#(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))} #91#return; {12025#(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_~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:06:03,665 INFO L272 TraceCheckUtils]: 90: Hoare triple {12025#(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_~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)); {11750#true} is VALID [2022-04-27 13:06:03,665 INFO L290 TraceCheckUtils]: 91: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,665 INFO L290 TraceCheckUtils]: 92: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,665 INFO L290 TraceCheckUtils]: 93: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,665 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {11750#true} {12025#(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_~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; {12025#(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_~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:06:03,665 INFO L272 TraceCheckUtils]: 95: Hoare triple {12025#(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_~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)); {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L290 TraceCheckUtils]: 96: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L290 TraceCheckUtils]: 97: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L290 TraceCheckUtils]: 98: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {11750#true} {12025#(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_~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; {12025#(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_~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:06:03,666 INFO L272 TraceCheckUtils]: 100: Hoare triple {12025#(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_~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)); {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L290 TraceCheckUtils]: 101: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L290 TraceCheckUtils]: 102: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,666 INFO L290 TraceCheckUtils]: 103: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,667 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {11750#true} {12025#(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_~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; {12025#(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_~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:06:03,667 INFO L290 TraceCheckUtils]: 105: Hoare triple {12025#(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_~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))} assume !(~c~0 >= ~b~0); {12025#(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_~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:06:03,669 INFO L290 TraceCheckUtils]: 106: Hoare triple {12025#(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_~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))} ~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; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,670 INFO L290 TraceCheckUtils]: 107: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,670 INFO L290 TraceCheckUtils]: 108: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,670 INFO L290 TraceCheckUtils]: 109: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,670 INFO L272 TraceCheckUtils]: 110: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= 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)); {11750#true} is VALID [2022-04-27 13:06:03,670 INFO L290 TraceCheckUtils]: 111: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,670 INFO L290 TraceCheckUtils]: 112: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,670 INFO L290 TraceCheckUtils]: 113: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,671 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {11750#true} {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,671 INFO L272 TraceCheckUtils]: 115: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= 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)); {11750#true} is VALID [2022-04-27 13:06:03,671 INFO L290 TraceCheckUtils]: 116: Hoare triple {11750#true} ~cond := #in~cond; {11750#true} is VALID [2022-04-27 13:06:03,671 INFO L290 TraceCheckUtils]: 117: Hoare triple {11750#true} assume !(0 == ~cond); {11750#true} is VALID [2022-04-27 13:06:03,671 INFO L290 TraceCheckUtils]: 118: Hoare triple {11750#true} assume true; {11750#true} is VALID [2022-04-27 13:06:03,672 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {11750#true} {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,672 INFO L272 TraceCheckUtils]: 120: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= 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)); {11750#true} is VALID [2022-04-27 13:06:03,672 INFO L290 TraceCheckUtils]: 121: Hoare triple {11750#true} ~cond := #in~cond; {12014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:03,672 INFO L290 TraceCheckUtils]: 122: Hoare triple {12014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:03,673 INFO L290 TraceCheckUtils]: 123: Hoare triple {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:03,673 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {12018#(not (= |__VERIFIER_assert_#in~cond| 0))} {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~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:06:03,676 INFO L272 TraceCheckUtils]: 125: Hoare triple {12077#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= 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)); {12135#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:06:03,677 INFO L290 TraceCheckUtils]: 126: Hoare triple {12135#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12139#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:03,677 INFO L290 TraceCheckUtils]: 127: Hoare triple {12139#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11751#false} is VALID [2022-04-27 13:06:03,677 INFO L290 TraceCheckUtils]: 128: Hoare triple {11751#false} assume !false; {11751#false} is VALID [2022-04-27 13:06:03,678 INFO L134 CoverageAnalysis]: Checked inductivity of 545 backedges. 91 proven. 42 refuted. 0 times theorem prover too weak. 412 trivial. 0 not checked. [2022-04-27 13:06:03,678 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:31,914 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:31,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [752058402] [2022-04-27 13:06:31,914 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:31,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1097575709] [2022-04-27 13:06:31,914 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1097575709] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:06:31,914 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:06:31,914 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 13:06:31,915 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1122438902] [2022-04-27 13:06:31,915 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:31,915 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), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) Word has length 129 [2022-04-27 13:06:31,915 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:31,915 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), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-27 13:06:32,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:06:32,011 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:06:32,012 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:32,012 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:06:32,012 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=140, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:06:32,012 INFO L87 Difference]: Start difference. First operand 154 states and 199 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-27 13:06:33,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,527 INFO L93 Difference]: Finished difference Result 195 states and 252 transitions. [2022-04-27 13:06:33,527 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:06:33,527 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), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) Word has length 129 [2022-04-27 13:06:33,527 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:06:33,527 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), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-27 13:06:33,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-27 13:06:33,528 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), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-27 13:06:33,529 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 79 transitions. [2022-04-27 13:06:33,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 79 transitions. [2022-04-27 13:06:33,632 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:06:33,635 INFO L225 Difference]: With dead ends: 195 [2022-04-27 13:06:33,635 INFO L226 Difference]: Without dead ends: 193 [2022-04-27 13:06:33,635 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 155 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=63, Invalid=209, Unknown=0, NotChecked=0, Total=272 [2022-04-27 13:06:33,635 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 17 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 236 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 172 SdHoareTripleChecker+Invalid, 249 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 236 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:06:33,636 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 172 Invalid, 249 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 236 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-27 13:06:33,636 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193 states. [2022-04-27 13:06:33,824 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193 to 157. [2022-04-27 13:06:33,824 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:06:33,825 INFO L82 GeneralOperation]: Start isEquivalent. First operand 193 states. Second operand has 157 states, 87 states have (on average 1.1379310344827587) internal successors, (99), 88 states have internal predecessors, (99), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:33,825 INFO L74 IsIncluded]: Start isIncluded. First operand 193 states. Second operand has 157 states, 87 states have (on average 1.1379310344827587) internal successors, (99), 88 states have internal predecessors, (99), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:33,825 INFO L87 Difference]: Start difference. First operand 193 states. Second operand has 157 states, 87 states have (on average 1.1379310344827587) internal successors, (99), 88 states have internal predecessors, (99), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:33,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,833 INFO L93 Difference]: Finished difference Result 193 states and 250 transitions. [2022-04-27 13:06:33,833 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 250 transitions. [2022-04-27 13:06:33,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:33,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:33,833 INFO L74 IsIncluded]: Start isIncluded. First operand has 157 states, 87 states have (on average 1.1379310344827587) internal successors, (99), 88 states have internal predecessors, (99), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 193 states. [2022-04-27 13:06:33,834 INFO L87 Difference]: Start difference. First operand has 157 states, 87 states have (on average 1.1379310344827587) internal successors, (99), 88 states have internal predecessors, (99), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 193 states. [2022-04-27 13:06:33,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:06:33,837 INFO L93 Difference]: Finished difference Result 193 states and 250 transitions. [2022-04-27 13:06:33,837 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 250 transitions. [2022-04-27 13:06:33,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:06:33,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:06:33,837 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:06:33,838 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:06:33,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 157 states, 87 states have (on average 1.1379310344827587) internal successors, (99), 88 states have internal predecessors, (99), 53 states have call successors, (53), 17 states have call predecessors, (53), 16 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:06:33,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 157 states to 157 states and 203 transitions. [2022-04-27 13:06:33,840 INFO L78 Accepts]: Start accepts. Automaton has 157 states and 203 transitions. Word has length 129 [2022-04-27 13:06:33,841 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:06:33,841 INFO L495 AbstractCegarLoop]: Abstraction has 157 states and 203 transitions. [2022-04-27 13:06:33,841 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), 4 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (18), 4 states have call predecessors, (18), 4 states have call successors, (18) [2022-04-27 13:06:33,841 INFO L276 IsEmpty]: Start isEmpty. Operand 157 states and 203 transitions. [2022-04-27 13:06:33,842 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2022-04-27 13:06:33,842 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:06:33,842 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 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] [2022-04-27 13:06:33,872 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:06:34,055 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:06:34,055 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:06:34,056 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:06:34,056 INFO L85 PathProgramCache]: Analyzing trace with hash -1899875875, now seen corresponding path program 3 times [2022-04-27 13:06:34,056 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:06:34,056 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1757703297] [2022-04-27 13:06:34,056 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:06:34,056 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:06:34,068 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:06:34,068 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1876733514] [2022-04-27 13:06:34,068 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:06:34,069 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:06:34,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:06:34,074 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:06:34,075 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:06:34,144 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 13:06:34,144 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:06:34,146 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 69 conjunts are in the unsatisfiable core [2022-04-27 13:06:34,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:06:34,171 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:06:35,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {13206#true} call ULTIMATE.init(); {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {13206#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); {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13206#true} {13206#true} #103#return; {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {13206#true} call #t~ret6 := main(); {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {13206#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; {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L272 TraceCheckUtils]: 6: Hoare triple {13206#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L290 TraceCheckUtils]: 7: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L290 TraceCheckUtils]: 8: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,412 INFO L290 TraceCheckUtils]: 9: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13206#true} {13206#true} #79#return; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 11: Hoare triple {13206#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L272 TraceCheckUtils]: 12: Hoare triple {13206#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 13: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 14: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 15: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13206#true} {13206#true} #81#return; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L272 TraceCheckUtils]: 17: Hoare triple {13206#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 18: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 19: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 20: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13206#true} {13206#true} #83#return; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L272 TraceCheckUtils]: 22: Hoare triple {13206#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 23: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 24: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L290 TraceCheckUtils]: 25: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,413 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13206#true} {13206#true} #85#return; {13206#true} is VALID [2022-04-27 13:06:35,414 INFO L290 TraceCheckUtils]: 27: Hoare triple {13206#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; {13292#(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:06:35,414 INFO L272 TraceCheckUtils]: 28: Hoare triple {13292#(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)); {13206#true} is VALID [2022-04-27 13:06:35,414 INFO L290 TraceCheckUtils]: 29: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,414 INFO L290 TraceCheckUtils]: 30: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,414 INFO L290 TraceCheckUtils]: 31: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,415 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {13206#true} {13292#(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; {13292#(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:06:35,415 INFO L272 TraceCheckUtils]: 33: Hoare triple {13292#(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)); {13206#true} is VALID [2022-04-27 13:06:35,415 INFO L290 TraceCheckUtils]: 34: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,415 INFO L290 TraceCheckUtils]: 35: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,415 INFO L290 TraceCheckUtils]: 36: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,416 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {13206#true} {13292#(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; {13292#(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:06:35,416 INFO L290 TraceCheckUtils]: 38: Hoare triple {13292#(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; {13292#(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:06:35,416 INFO L290 TraceCheckUtils]: 39: Hoare triple {13292#(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; {13329#(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:06:35,417 INFO L290 TraceCheckUtils]: 40: Hoare triple {13329#(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; {13329#(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:06:35,417 INFO L272 TraceCheckUtils]: 41: Hoare triple {13329#(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)); {13206#true} is VALID [2022-04-27 13:06:35,417 INFO L290 TraceCheckUtils]: 42: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,417 INFO L290 TraceCheckUtils]: 43: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,417 INFO L290 TraceCheckUtils]: 44: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,418 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {13206#true} {13329#(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; {13329#(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:06:35,418 INFO L272 TraceCheckUtils]: 46: Hoare triple {13329#(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)); {13206#true} is VALID [2022-04-27 13:06:35,418 INFO L290 TraceCheckUtils]: 47: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,418 INFO L290 TraceCheckUtils]: 48: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,418 INFO L290 TraceCheckUtils]: 49: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,418 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {13206#true} {13329#(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; {13329#(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:06:35,418 INFO L272 TraceCheckUtils]: 51: Hoare triple {13329#(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)); {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L290 TraceCheckUtils]: 52: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L290 TraceCheckUtils]: 53: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L290 TraceCheckUtils]: 54: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13206#true} {13329#(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; {13329#(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:06:35,419 INFO L272 TraceCheckUtils]: 56: Hoare triple {13329#(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)); {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L290 TraceCheckUtils]: 57: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L290 TraceCheckUtils]: 58: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,419 INFO L290 TraceCheckUtils]: 59: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,420 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {13206#true} {13329#(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; {13329#(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:06:35,420 INFO L290 TraceCheckUtils]: 61: Hoare triple {13329#(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); {13329#(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:06:35,421 INFO L290 TraceCheckUtils]: 62: Hoare triple {13329#(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))} ~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; {13399#(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_~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:06:35,421 INFO L290 TraceCheckUtils]: 63: Hoare triple {13399#(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_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {13399#(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_~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:06:35,422 INFO L290 TraceCheckUtils]: 64: Hoare triple {13399#(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_~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; {13406#(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)))} is VALID [2022-04-27 13:06:35,422 INFO L290 TraceCheckUtils]: 65: Hoare triple {13406#(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)))} assume !false; {13406#(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)))} is VALID [2022-04-27 13:06:35,422 INFO L272 TraceCheckUtils]: 66: Hoare triple {13406#(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)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,422 INFO L290 TraceCheckUtils]: 67: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,422 INFO L290 TraceCheckUtils]: 68: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,422 INFO L290 TraceCheckUtils]: 69: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,423 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {13206#true} {13406#(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)))} #91#return; {13406#(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)))} is VALID [2022-04-27 13:06:35,423 INFO L272 TraceCheckUtils]: 71: Hoare triple {13406#(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)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,423 INFO L290 TraceCheckUtils]: 72: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,423 INFO L290 TraceCheckUtils]: 73: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,423 INFO L290 TraceCheckUtils]: 74: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,424 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {13206#true} {13406#(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)))} #93#return; {13406#(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)))} is VALID [2022-04-27 13:06:35,424 INFO L272 TraceCheckUtils]: 76: Hoare triple {13406#(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)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,424 INFO L290 TraceCheckUtils]: 77: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,424 INFO L290 TraceCheckUtils]: 78: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,424 INFO L290 TraceCheckUtils]: 79: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,425 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {13206#true} {13406#(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)))} #95#return; {13406#(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)))} is VALID [2022-04-27 13:06:35,425 INFO L272 TraceCheckUtils]: 81: Hoare triple {13406#(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)))} 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)); {13206#true} is VALID [2022-04-27 13:06:35,425 INFO L290 TraceCheckUtils]: 82: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,425 INFO L290 TraceCheckUtils]: 83: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,425 INFO L290 TraceCheckUtils]: 84: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,426 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {13206#true} {13406#(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)))} #97#return; {13406#(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)))} is VALID [2022-04-27 13:06:35,426 INFO L290 TraceCheckUtils]: 86: Hoare triple {13406#(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)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,426 INFO L290 TraceCheckUtils]: 87: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !false; {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,426 INFO L272 TraceCheckUtils]: 88: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L290 TraceCheckUtils]: 89: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L290 TraceCheckUtils]: 90: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L290 TraceCheckUtils]: 91: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {13206#true} {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #91#return; {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,427 INFO L272 TraceCheckUtils]: 93: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L290 TraceCheckUtils]: 94: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L290 TraceCheckUtils]: 95: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,427 INFO L290 TraceCheckUtils]: 96: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,428 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {13206#true} {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #93#return; {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,428 INFO L272 TraceCheckUtils]: 98: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:06:35,428 INFO L290 TraceCheckUtils]: 99: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,428 INFO L290 TraceCheckUtils]: 100: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,428 INFO L290 TraceCheckUtils]: 101: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,429 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {13206#true} {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #95#return; {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,429 INFO L272 TraceCheckUtils]: 103: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ 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)); {13206#true} is VALID [2022-04-27 13:06:35,429 INFO L290 TraceCheckUtils]: 104: Hoare triple {13206#true} ~cond := #in~cond; {13528#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,430 INFO L290 TraceCheckUtils]: 105: Hoare triple {13528#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,430 INFO L290 TraceCheckUtils]: 106: Hoare triple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,430 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #97#return; {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,431 INFO L290 TraceCheckUtils]: 108: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:06:35,431 INFO L290 TraceCheckUtils]: 109: Hoare triple {13473#(and (= main_~s~0 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)) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13545#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:06:35,432 INFO L290 TraceCheckUtils]: 110: Hoare triple {13545#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !false; {13545#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:06:35,432 INFO L290 TraceCheckUtils]: 111: Hoare triple {13545#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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:06:35,433 INFO L290 TraceCheckUtils]: 112: Hoare triple {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !false; {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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:06:35,433 INFO L272 TraceCheckUtils]: 113: Hoare triple {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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)); {13206#true} is VALID [2022-04-27 13:06:35,433 INFO L290 TraceCheckUtils]: 114: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,433 INFO L290 TraceCheckUtils]: 115: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,433 INFO L290 TraceCheckUtils]: 116: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,433 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {13206#true} {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #91#return; {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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:06:35,433 INFO L272 TraceCheckUtils]: 118: Hoare triple {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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)); {13206#true} is VALID [2022-04-27 13:06:35,433 INFO L290 TraceCheckUtils]: 119: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:06:35,434 INFO L290 TraceCheckUtils]: 120: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:06:35,434 INFO L290 TraceCheckUtils]: 121: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:06:35,434 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {13206#true} {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #93#return; {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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:06:35,434 INFO L272 TraceCheckUtils]: 123: Hoare triple {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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)); {13206#true} is VALID [2022-04-27 13:06:35,434 INFO L290 TraceCheckUtils]: 124: Hoare triple {13206#true} ~cond := #in~cond; {13528#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,435 INFO L290 TraceCheckUtils]: 125: Hoare triple {13528#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,435 INFO L290 TraceCheckUtils]: 126: Hoare triple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:35,435 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #95#return; {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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:06:35,437 INFO L272 TraceCheckUtils]: 128: Hoare triple {13552#(and (= main_~y~0 (+ main_~b~0 main_~x~0)) (= main_~s~0 1) (= (+ main_~q~0 1) 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)); {13604#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:06:35,438 INFO L290 TraceCheckUtils]: 129: Hoare triple {13604#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13608#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:35,438 INFO L290 TraceCheckUtils]: 130: Hoare triple {13608#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13207#false} is VALID [2022-04-27 13:06:35,438 INFO L290 TraceCheckUtils]: 131: Hoare triple {13207#false} assume !false; {13207#false} is VALID [2022-04-27 13:06:35,438 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 100 proven. 48 refuted. 0 times theorem prover too weak. 402 trivial. 0 not checked. [2022-04-27 13:06:35,438 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:08:07,719 INFO L290 TraceCheckUtils]: 131: Hoare triple {13207#false} assume !false; {13207#false} is VALID [2022-04-27 13:08:07,720 INFO L290 TraceCheckUtils]: 130: Hoare triple {13608#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13207#false} is VALID [2022-04-27 13:08:07,721 INFO L290 TraceCheckUtils]: 129: Hoare triple {13604#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13608#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:08:07,721 INFO L272 TraceCheckUtils]: 128: Hoare triple {13624#(= (+ (* 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)); {13604#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:08:07,722 INFO L284 TraceCheckUtils]: 127: Hoare quadruple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} {13628#(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; {13624#(= (+ (* 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:08:07,722 INFO L290 TraceCheckUtils]: 126: Hoare triple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:07,723 INFO L290 TraceCheckUtils]: 125: Hoare triple {13638#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:07,723 INFO L290 TraceCheckUtils]: 124: Hoare triple {13206#true} ~cond := #in~cond; {13638#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:08:07,723 INFO L272 TraceCheckUtils]: 123: Hoare triple {13628#(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)); {13206#true} is VALID [2022-04-27 13:08:07,723 INFO L284 TraceCheckUtils]: 122: Hoare quadruple {13206#true} {13628#(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; {13628#(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:08:07,724 INFO L290 TraceCheckUtils]: 121: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:07,724 INFO L290 TraceCheckUtils]: 120: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:07,724 INFO L290 TraceCheckUtils]: 119: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:07,724 INFO L272 TraceCheckUtils]: 118: Hoare triple {13628#(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)); {13206#true} is VALID [2022-04-27 13:08:07,724 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {13206#true} {13628#(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; {13628#(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:08:07,724 INFO L290 TraceCheckUtils]: 116: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:07,724 INFO L290 TraceCheckUtils]: 115: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:07,724 INFO L290 TraceCheckUtils]: 114: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:07,725 INFO L272 TraceCheckUtils]: 113: Hoare triple {13628#(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)); {13206#true} is VALID [2022-04-27 13:08:07,725 INFO L290 TraceCheckUtils]: 112: Hoare triple {13628#(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; {13628#(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:08:07,725 INFO L290 TraceCheckUtils]: 111: Hoare triple {13628#(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; {13628#(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:08:07,726 INFO L290 TraceCheckUtils]: 110: Hoare triple {13628#(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; {13628#(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:08:09,727 WARN L290 TraceCheckUtils]: 109: Hoare triple {13684#(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; {13628#(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:08:09,728 INFO L290 TraceCheckUtils]: 108: Hoare triple {13684#(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); {13684#(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:08:09,729 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} {13691#(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; {13684#(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:08:09,729 INFO L290 TraceCheckUtils]: 106: Hoare triple {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:09,729 INFO L290 TraceCheckUtils]: 105: Hoare triple {13638#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {13532#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:09,730 INFO L290 TraceCheckUtils]: 104: Hoare triple {13206#true} ~cond := #in~cond; {13638#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:08:09,730 INFO L272 TraceCheckUtils]: 103: Hoare triple {13691#(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)); {13206#true} is VALID [2022-04-27 13:08:09,731 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {13206#true} {13691#(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)))} #95#return; {13691#(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:08:09,731 INFO L290 TraceCheckUtils]: 101: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:09,731 INFO L290 TraceCheckUtils]: 100: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:09,731 INFO L290 TraceCheckUtils]: 99: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:09,731 INFO L272 TraceCheckUtils]: 98: Hoare triple {13691#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:09,731 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {13206#true} {13691#(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)))} #93#return; {13691#(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:08:09,732 INFO L290 TraceCheckUtils]: 96: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:09,732 INFO L290 TraceCheckUtils]: 95: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:09,732 INFO L290 TraceCheckUtils]: 94: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:09,732 INFO L272 TraceCheckUtils]: 93: Hoare triple {13691#(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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:09,732 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {13206#true} {13691#(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)))} #91#return; {13691#(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:08:09,732 INFO L290 TraceCheckUtils]: 91: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:09,732 INFO L290 TraceCheckUtils]: 90: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:09,732 INFO L290 TraceCheckUtils]: 89: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:09,733 INFO L272 TraceCheckUtils]: 88: Hoare triple {13691#(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 ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:09,733 INFO L290 TraceCheckUtils]: 87: Hoare triple {13691#(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)))} assume !false; {13691#(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:08:11,735 WARN L290 TraceCheckUtils]: 86: Hoare triple {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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; {13691#(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 UNKNOWN [2022-04-27 13:08:11,736 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {13206#true} {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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; {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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:08:11,736 INFO L290 TraceCheckUtils]: 84: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:11,736 INFO L290 TraceCheckUtils]: 83: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:11,736 INFO L290 TraceCheckUtils]: 82: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:11,736 INFO L272 TraceCheckUtils]: 81: Hoare triple {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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)); {13206#true} is VALID [2022-04-27 13:08:11,737 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {13206#true} {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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; {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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:08:11,737 INFO L290 TraceCheckUtils]: 79: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:11,737 INFO L290 TraceCheckUtils]: 78: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:11,737 INFO L290 TraceCheckUtils]: 77: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:11,737 INFO L272 TraceCheckUtils]: 76: Hoare triple {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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)); {13206#true} is VALID [2022-04-27 13:08:11,738 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {13206#true} {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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; {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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:08:11,738 INFO L290 TraceCheckUtils]: 74: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:11,738 INFO L290 TraceCheckUtils]: 73: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:11,738 INFO L290 TraceCheckUtils]: 72: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:11,738 INFO L272 TraceCheckUtils]: 71: Hoare triple {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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)); {13206#true} is VALID [2022-04-27 13:08:11,739 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {13206#true} {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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; {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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:08:11,739 INFO L290 TraceCheckUtils]: 69: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:11,739 INFO L290 TraceCheckUtils]: 68: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:11,739 INFO L290 TraceCheckUtils]: 67: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:11,739 INFO L272 TraceCheckUtils]: 66: Hoare triple {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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)); {13206#true} is VALID [2022-04-27 13:08:11,742 INFO L290 TraceCheckUtils]: 65: Hoare triple {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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; {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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:08:11,743 INFO L290 TraceCheckUtils]: 64: Hoare triple {13822#(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_~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 (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13755#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1)))) (* (+ (* main_~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_~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_~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:08:11,743 INFO L290 TraceCheckUtils]: 63: Hoare triple {13822#(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_~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 (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} assume !false; {13822#(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_~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 (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is VALID [2022-04-27 13:08:13,746 WARN L290 TraceCheckUtils]: 62: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~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; {13822#(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_~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 (= (+ main_~a~0 (* (- 1) main_~b~0)) (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))))))} is UNKNOWN [2022-04-27 13:08:13,747 INFO L290 TraceCheckUtils]: 61: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} assume !(~c~0 >= ~b~0); {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,748 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {13206#true} {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} #97#return; {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,748 INFO L290 TraceCheckUtils]: 59: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,748 INFO L290 TraceCheckUtils]: 58: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,748 INFO L290 TraceCheckUtils]: 57: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,748 INFO L272 TraceCheckUtils]: 56: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~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)); {13206#true} is VALID [2022-04-27 13:08:13,749 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {13206#true} {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} #95#return; {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,749 INFO L290 TraceCheckUtils]: 54: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,749 INFO L290 TraceCheckUtils]: 53: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,749 INFO L290 TraceCheckUtils]: 52: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,749 INFO L272 TraceCheckUtils]: 51: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,750 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {13206#true} {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} #93#return; {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,750 INFO L290 TraceCheckUtils]: 49: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,750 INFO L290 TraceCheckUtils]: 48: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,750 INFO L290 TraceCheckUtils]: 47: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,750 INFO L272 TraceCheckUtils]: 46: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,751 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {13206#true} {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} #91#return; {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,751 INFO L290 TraceCheckUtils]: 44: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,751 INFO L290 TraceCheckUtils]: 43: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,751 INFO L290 TraceCheckUtils]: 42: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,751 INFO L272 TraceCheckUtils]: 41: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,752 INFO L290 TraceCheckUtils]: 40: Hoare triple {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} assume !false; {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,753 INFO L290 TraceCheckUtils]: 39: Hoare triple {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13829#(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_~c~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0)))) (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0))) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* (- 1) main_~y~0 main_~s~0) (* (- 1) main_~k~0 main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~k~0 main_~x~0) (* main_~p~0 main_~x~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)))))} is VALID [2022-04-27 13:08:13,754 INFO L290 TraceCheckUtils]: 38: Hoare triple {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} assume !false; {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} is VALID [2022-04-27 13:08:13,754 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {13206#true} {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} #89#return; {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} is VALID [2022-04-27 13:08:13,754 INFO L290 TraceCheckUtils]: 36: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,754 INFO L290 TraceCheckUtils]: 35: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,754 INFO L290 TraceCheckUtils]: 34: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,754 INFO L272 TraceCheckUtils]: 33: Hoare triple {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,755 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {13206#true} {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} #87#return; {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} is VALID [2022-04-27 13:08:13,755 INFO L290 TraceCheckUtils]: 31: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,755 INFO L290 TraceCheckUtils]: 30: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,755 INFO L272 TraceCheckUtils]: 28: Hoare triple {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 27: Hoare triple {13206#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; {13899#(or (= (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* (+ main_~q~0 (* (- 1) main_~p~0)) main_~xy~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~yy~0)) (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~0))) (* (+ (* (+ main_~s~0 (* (- 1) main_~r~0)) main_~y~0) (* main_~x~0 (+ main_~q~0 (* (- 1) main_~p~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_~xy~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)) (+ (* main_~y~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0))) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~a~0 (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* (- 1) main_~q~0 main_~x~0 0) (* main_~p~0 main_~x~0) (* (- 1) main_~y~0 main_~s~0 0)))))} is VALID [2022-04-27 13:08:13,757 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13206#true} {13206#true} #85#return; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 25: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 24: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 23: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L272 TraceCheckUtils]: 22: Hoare triple {13206#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13206#true} {13206#true} #83#return; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 20: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 19: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 18: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L272 TraceCheckUtils]: 17: Hoare triple {13206#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {13206#true} {13206#true} #81#return; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 15: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 14: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 13: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L272 TraceCheckUtils]: 12: Hoare triple {13206#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L290 TraceCheckUtils]: 11: Hoare triple {13206#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13206#true} is VALID [2022-04-27 13:08:13,757 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13206#true} {13206#true} #79#return; {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L290 TraceCheckUtils]: 9: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L290 TraceCheckUtils]: 8: Hoare triple {13206#true} assume !(0 == ~cond); {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L290 TraceCheckUtils]: 7: Hoare triple {13206#true} ~cond := #in~cond; {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L272 TraceCheckUtils]: 6: Hoare triple {13206#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L290 TraceCheckUtils]: 5: Hoare triple {13206#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; {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L272 TraceCheckUtils]: 4: Hoare triple {13206#true} call #t~ret6 := main(); {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13206#true} {13206#true} #103#return; {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L290 TraceCheckUtils]: 2: Hoare triple {13206#true} assume true; {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L290 TraceCheckUtils]: 1: Hoare triple {13206#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); {13206#true} is VALID [2022-04-27 13:08:13,758 INFO L272 TraceCheckUtils]: 0: Hoare triple {13206#true} call ULTIMATE.init(); {13206#true} is VALID [2022-04-27 13:08:13,759 INFO L134 CoverageAnalysis]: Checked inductivity of 550 backedges. 101 proven. 47 refuted. 0 times theorem prover too weak. 402 trivial. 0 not checked. [2022-04-27 13:08:13,759 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:08:13,759 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1757703297] [2022-04-27 13:08:13,759 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:08:13,759 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1876733514] [2022-04-27 13:08:13,759 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1876733514] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:08:13,759 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:08:13,759 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-27 13:08:13,759 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [365373124] [2022-04-27 13:08:13,759 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:08:13,760 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) Word has length 132 [2022-04-27 13:08:13,760 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:08:13,760 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) [2022-04-27 13:08:19,938 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 131 edges. 128 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-27 13:08:19,938 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 13:08:19,939 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:08:19,939 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 13:08:19,939 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=106, Invalid=356, Unknown=0, NotChecked=0, Total=462 [2022-04-27 13:08:19,939 INFO L87 Difference]: Start difference. First operand 157 states and 203 transitions. Second operand has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) [2022-04-27 13:08:34,736 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.41s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:08:47,593 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse8 (* (- 1) c_main_~q~0 c_main_~k~0)) (.cse5 (* c_main_~s~0 c_main_~k~0)) (.cse20 (* c_main_~q~0 c_main_~x~0)) (.cse21 (* c_main_~s~0 c_main_~y~0))) (let ((.cse19 (= (+ .cse20 .cse21 (* c_main_~b~0 c_main_~y~0)) (+ (* c_main_~q~0 c_main_~xy~0) (* c_main_~yy~0 c_main_~s~0) c_main_~b~0))) (.cse44 (+ c_main_~r~0 (* (- 1) .cse5))) (.cse43 (+ c_main_~p~0 .cse8))) (let ((.cse10 (* c_main_~xy~0 .cse43)) (.cse16 (* c_main_~yy~0 .cse44)) (.cse17 (* .cse44 c_main_~y~0)) (.cse18 (* .cse43 c_main_~x~0)) (.cse6 (* (- 1) c_main_~r~0)) (.cse7 (* (- 1) c_main_~p~0)) (.cse11 (* (- 1) c_main_~s~0 c_main_~y~0)) (.cse13 (* c_main_~p~0 c_main_~x~0)) (.cse14 (* c_main_~r~0 c_main_~y~0)) (.cse15 (* (- 1) c_main_~q~0 c_main_~x~0)) (.cse24 (not .cse19)) (.cse23 (* (- 1) c_main_~b~0))) (and (let ((.cse9 (* (- 1) c_main_~q~0 c_main_~x~0 c_main_~k~0)) (.cse12 (* (- 1) c_main_~s~0 c_main_~y~0 c_main_~k~0))) (let ((.cse0 (+ c_main_~b~0 .cse9 .cse11 .cse12 .cse13 .cse14 .cse15))) (or (not (= c_main_~c~0 .cse0)) (let ((.cse2 (+ c_main_~q~0 .cse7 (* (- 1) .cse8))) (.cse4 (+ c_main_~s~0 .cse5 .cse6))) (let ((.cse1 (* .cse4 c_main_~y~0)) (.cse3 (* .cse2 c_main_~x~0))) (= (+ .cse1 (* .cse2 c_main_~xy~0) .cse3 (* c_main_~yy~0 .cse4)) (+ (* (+ .cse1 .cse3) c_main_~y~0) .cse1 .cse3)))) (not (= (+ c_main_~b~0 .cse9 .cse10 .cse11 .cse12 .cse13 .cse14 .cse15 .cse16) (+ .cse17 .cse18 (* .cse0 c_main_~y~0))))))) (or .cse19 (not (= c_main_~b~0 (+ .cse20 .cse21)))) (let ((.cse25 (+ (* (- 1) c_main_~q~0) c_main_~p~0)) (.cse28 (+ (* (- 1) c_main_~s~0) c_main_~r~0))) (let ((.cse26 (* .cse28 c_main_~y~0)) (.cse27 (* .cse25 c_main_~x~0))) (let ((.cse22 (+ .cse26 .cse27))) (or (not (= .cse22 (+ .cse23 c_main_~a~0))) .cse24 (= (+ (* .cse25 c_main_~xy~0) .cse26 .cse27 (* c_main_~yy~0 .cse28)) (+ .cse26 .cse27 (* .cse22 c_main_~y~0))))))) (let ((.cse29 (+ .cse17 .cse18))) (or (= (+ .cse17 .cse10 .cse18 .cse16) (+ .cse17 (* .cse29 c_main_~y~0) .cse18)) (not (= c_main_~c~0 .cse29)))) (let ((.cse35 (* (- 1) c_main_~q~0 c_main_~x~0 0)) (.cse36 (* (- 1) c_main_~s~0 c_main_~y~0 0))) (let ((.cse30 (+ .cse35 c_main_~b~0 .cse11 .cse36 .cse13 .cse14 .cse15))) (or (not (= .cse30 c_main_~a~0)) (let ((.cse33 (+ c_main_~q~0 .cse7)) (.cse34 (+ c_main_~s~0 .cse6))) (let ((.cse31 (* c_main_~y~0 .cse34)) (.cse32 (* .cse33 c_main_~x~0))) (= (+ (* (+ .cse31 .cse32) c_main_~y~0) .cse31 .cse32) (+ .cse31 (* c_main_~xy~0 .cse33) .cse32 (* c_main_~yy~0 .cse34))))) (not (= (+ (* .cse30 c_main_~y~0) .cse13 .cse14) (+ .cse35 c_main_~b~0 (* c_main_~yy~0 c_main_~r~0) .cse11 .cse36 .cse13 .cse14 .cse15 (* c_main_~xy~0 c_main_~p~0))))))) (let ((.cse42 (+ c_main_~k~0 1))) (let ((.cse39 (+ (* (- 1) (* c_main_~s~0 .cse42)) c_main_~r~0)) (.cse38 (+ (* (- 1) c_main_~q~0 .cse42) c_main_~p~0))) (let ((.cse37 (* .cse38 c_main_~x~0)) (.cse40 (* .cse39 c_main_~y~0))) (let ((.cse41 (+ .cse37 .cse40))) (or .cse24 (= (+ .cse37 (* .cse38 c_main_~xy~0) (* c_main_~yy~0 .cse39) .cse40) (+ (* .cse41 c_main_~y~0) .cse37 .cse40)) (not (= .cse41 (+ .cse23 c_main_~c~0)))))))))))) is different from true [2022-04-27 13:08:49,653 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse1 (* c_main_~q~0 c_main_~x~0)) (.cse2 (* c_main_~s~0 c_main_~y~0))) (let ((.cse0 (= (+ .cse1 .cse2 (* c_main_~b~0 c_main_~y~0)) (+ (* c_main_~q~0 c_main_~xy~0) (* c_main_~yy~0 c_main_~s~0) c_main_~b~0)))) (and (or .cse0 (not (= c_main_~b~0 (+ .cse1 .cse2)))) (let ((.cse4 (+ (* (- 1) c_main_~q~0) c_main_~p~0)) (.cse7 (+ (* (- 1) c_main_~s~0) c_main_~r~0))) (let ((.cse5 (* .cse7 c_main_~y~0)) (.cse6 (* .cse4 c_main_~x~0))) (let ((.cse3 (+ .cse5 .cse6))) (or (not (= .cse3 (+ (* (- 1) c_main_~b~0) c_main_~a~0))) (not .cse0) (= (+ (* .cse4 c_main_~xy~0) .cse5 .cse6 (* c_main_~yy~0 .cse7)) (+ .cse5 .cse6 (* .cse3 c_main_~y~0))))))) (let ((.cse15 (* (- 1) c_main_~q~0 c_main_~x~0 0)) (.cse16 (* (- 1) c_main_~s~0 c_main_~y~0)) (.cse17 (* (- 1) c_main_~s~0 c_main_~y~0 0)) (.cse13 (* c_main_~p~0 c_main_~x~0)) (.cse14 (* c_main_~r~0 c_main_~y~0)) (.cse18 (* (- 1) c_main_~q~0 c_main_~x~0))) (let ((.cse8 (+ .cse15 c_main_~b~0 .cse16 .cse17 .cse13 .cse14 .cse18))) (or (not (= .cse8 c_main_~a~0)) (let ((.cse11 (+ c_main_~q~0 (* (- 1) c_main_~p~0))) (.cse12 (+ c_main_~s~0 (* (- 1) c_main_~r~0)))) (let ((.cse9 (* c_main_~y~0 .cse12)) (.cse10 (* .cse11 c_main_~x~0))) (= (+ (* (+ .cse9 .cse10) c_main_~y~0) .cse9 .cse10) (+ .cse9 (* c_main_~xy~0 .cse11) .cse10 (* c_main_~yy~0 .cse12))))) (not (= (+ (* .cse8 c_main_~y~0) .cse13 .cse14) (+ .cse15 c_main_~b~0 (* c_main_~yy~0 c_main_~r~0) .cse16 .cse17 .cse13 .cse14 .cse18 (* c_main_~xy~0 c_main_~p~0)))))))))) is different from true [2022-04-27 13:08:55,493 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.30s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:02,020 WARN L232 SmtUtils]: Spent 5.14s on a formula simplification that was a NOOP. DAG size: 111 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:09:07,126 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:09:14,495 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:16,497 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:09:20,760 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:09:23,389 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:09:27,511 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:40,728 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.01s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:43,837 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:09:45,838 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:09:47,842 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:09:49,844 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:09:51,847 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:09:51,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:51,877 INFO L93 Difference]: Finished difference Result 257 states and 339 transitions. [2022-04-27 13:09:51,887 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-27 13:09:51,888 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) Word has length 132 [2022-04-27 13:09:51,888 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:09:51,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) [2022-04-27 13:09:51,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 155 transitions. [2022-04-27 13:09:51,892 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) [2022-04-27 13:09:51,893 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 155 transitions. [2022-04-27 13:09:51,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 155 transitions. [2022-04-27 13:09:59,293 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 152 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-04-27 13:09:59,297 INFO L225 Difference]: With dead ends: 257 [2022-04-27 13:09:59,297 INFO L226 Difference]: Without dead ends: 253 [2022-04-27 13:09:59,298 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 280 GetRequests, 241 SyntacticMatches, 3 SemanticMatches, 36 ConstructedPredicates, 2 IntricatePredicates, 0 DeprecatedPredicates, 160 ImplicationChecksByTransitivity, 28.0s TimeCoverageRelationStatistics Valid=328, Invalid=938, Unknown=2, NotChecked=138, Total=1406 [2022-04-27 13:09:59,298 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 108 mSDsluCounter, 197 mSDsCounter, 0 mSdLazyCounter, 664 mSolverCounterSat, 222 mSolverCounterUnsat, 12 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 36.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 248 SdHoareTripleChecker+Invalid, 905 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 222 IncrementalHoareTripleChecker+Valid, 664 IncrementalHoareTripleChecker+Invalid, 12 IncrementalHoareTripleChecker+Unknown, 7 IncrementalHoareTripleChecker+Unchecked, 36.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:09:59,298 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [120 Valid, 248 Invalid, 905 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [222 Valid, 664 Invalid, 12 Unknown, 7 Unchecked, 36.8s Time] [2022-04-27 13:09:59,299 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 253 states. [2022-04-27 13:09:59,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 253 to 196. [2022-04-27 13:09:59,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:09:59,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 253 states. Second operand has 196 states, 110 states have (on average 1.1181818181818182) internal successors, (123), 110 states have internal predecessors, (123), 65 states have call successors, (65), 22 states have call predecessors, (65), 20 states have return successors, (63), 63 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-27 13:09:59,564 INFO L74 IsIncluded]: Start isIncluded. First operand 253 states. Second operand has 196 states, 110 states have (on average 1.1181818181818182) internal successors, (123), 110 states have internal predecessors, (123), 65 states have call successors, (65), 22 states have call predecessors, (65), 20 states have return successors, (63), 63 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-27 13:09:59,565 INFO L87 Difference]: Start difference. First operand 253 states. Second operand has 196 states, 110 states have (on average 1.1181818181818182) internal successors, (123), 110 states have internal predecessors, (123), 65 states have call successors, (65), 22 states have call predecessors, (65), 20 states have return successors, (63), 63 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-27 13:09:59,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:59,569 INFO L93 Difference]: Finished difference Result 253 states and 335 transitions. [2022-04-27 13:09:59,569 INFO L276 IsEmpty]: Start isEmpty. Operand 253 states and 335 transitions. [2022-04-27 13:09:59,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:09:59,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:09:59,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 196 states, 110 states have (on average 1.1181818181818182) internal successors, (123), 110 states have internal predecessors, (123), 65 states have call successors, (65), 22 states have call predecessors, (65), 20 states have return successors, (63), 63 states have call predecessors, (63), 63 states have call successors, (63) Second operand 253 states. [2022-04-27 13:09:59,571 INFO L87 Difference]: Start difference. First operand has 196 states, 110 states have (on average 1.1181818181818182) internal successors, (123), 110 states have internal predecessors, (123), 65 states have call successors, (65), 22 states have call predecessors, (65), 20 states have return successors, (63), 63 states have call predecessors, (63), 63 states have call successors, (63) Second operand 253 states. [2022-04-27 13:09:59,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:09:59,575 INFO L93 Difference]: Finished difference Result 253 states and 335 transitions. [2022-04-27 13:09:59,575 INFO L276 IsEmpty]: Start isEmpty. Operand 253 states and 335 transitions. [2022-04-27 13:09:59,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:09:59,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:09:59,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:09:59,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:09:59,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 196 states, 110 states have (on average 1.1181818181818182) internal successors, (123), 110 states have internal predecessors, (123), 65 states have call successors, (65), 22 states have call predecessors, (65), 20 states have return successors, (63), 63 states have call predecessors, (63), 63 states have call successors, (63) [2022-04-27 13:09:59,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 196 states to 196 states and 251 transitions. [2022-04-27 13:09:59,580 INFO L78 Accepts]: Start accepts. Automaton has 196 states and 251 transitions. Word has length 132 [2022-04-27 13:09:59,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:09:59,580 INFO L495 AbstractCegarLoop]: Abstraction has 196 states and 251 transitions. [2022-04-27 13:09:59,580 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 2.380952380952381) internal successors, (50), 20 states have internal predecessors, (50), 12 states have call successors, (42), 2 states have call predecessors, (42), 2 states have return successors, (39), 13 states have call predecessors, (39), 11 states have call successors, (39) [2022-04-27 13:09:59,580 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 251 transitions. [2022-04-27 13:09:59,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 139 [2022-04-27 13:09:59,581 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:09:59,581 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:09:59,600 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:09:59,795 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:09:59,795 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:09:59,796 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:09:59,796 INFO L85 PathProgramCache]: Analyzing trace with hash -896647763, now seen corresponding path program 2 times [2022-04-27 13:09:59,796 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:09:59,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [749654566] [2022-04-27 13:09:59,796 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:09:59,796 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:09:59,806 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:09:59,806 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1794512031] [2022-04-27 13:09:59,806 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:09:59,806 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:09:59,807 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:09:59,807 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:09:59,808 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:09:59,869 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:09:59,869 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:09:59,871 INFO L263 TraceCheckSpWp]: Trace formula consists of 333 conjuncts, 67 conjunts are in the unsatisfiable core [2022-04-27 13:09:59,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:09:59,891 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:10:02,414 INFO L272 TraceCheckUtils]: 0: Hoare triple {15261#true} call ULTIMATE.init(); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 1: Hoare triple {15261#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); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 2: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15261#true} {15261#true} #103#return; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L272 TraceCheckUtils]: 4: Hoare triple {15261#true} call #t~ret6 := main(); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 5: Hoare triple {15261#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; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L272 TraceCheckUtils]: 6: Hoare triple {15261#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 7: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 8: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 9: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15261#true} {15261#true} #79#return; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 11: Hoare triple {15261#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L272 TraceCheckUtils]: 12: Hoare triple {15261#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 14: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15261#true} {15261#true} #81#return; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L272 TraceCheckUtils]: 17: Hoare triple {15261#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 18: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 19: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,415 INFO L290 TraceCheckUtils]: 20: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15261#true} {15261#true} #83#return; {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L272 TraceCheckUtils]: 22: Hoare triple {15261#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 23: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 25: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15261#true} {15261#true} #85#return; {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 27: Hoare triple {15261#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; {15347#(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:10:02,416 INFO L272 TraceCheckUtils]: 28: Hoare triple {15347#(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)); {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 29: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 30: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,416 INFO L290 TraceCheckUtils]: 31: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,417 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {15261#true} {15347#(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; {15347#(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:10:02,417 INFO L272 TraceCheckUtils]: 33: Hoare triple {15347#(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)); {15261#true} is VALID [2022-04-27 13:10:02,417 INFO L290 TraceCheckUtils]: 34: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,417 INFO L290 TraceCheckUtils]: 35: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,417 INFO L290 TraceCheckUtils]: 36: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,418 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {15261#true} {15347#(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; {15347#(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:10:02,418 INFO L290 TraceCheckUtils]: 38: Hoare triple {15347#(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; {15347#(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:10:02,418 INFO L290 TraceCheckUtils]: 39: Hoare triple {15347#(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; {15384#(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:10:02,442 INFO L290 TraceCheckUtils]: 40: Hoare triple {15384#(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; {15384#(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:10:02,442 INFO L272 TraceCheckUtils]: 41: Hoare triple {15384#(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)); {15261#true} is VALID [2022-04-27 13:10:02,442 INFO L290 TraceCheckUtils]: 42: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,442 INFO L290 TraceCheckUtils]: 43: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,442 INFO L290 TraceCheckUtils]: 44: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,443 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {15261#true} {15384#(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; {15384#(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:10:02,443 INFO L272 TraceCheckUtils]: 46: Hoare triple {15384#(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)); {15261#true} is VALID [2022-04-27 13:10:02,443 INFO L290 TraceCheckUtils]: 47: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,443 INFO L290 TraceCheckUtils]: 48: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,443 INFO L290 TraceCheckUtils]: 49: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,444 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {15261#true} {15384#(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; {15384#(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:10:02,444 INFO L272 TraceCheckUtils]: 51: Hoare triple {15384#(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)); {15261#true} is VALID [2022-04-27 13:10:02,444 INFO L290 TraceCheckUtils]: 52: Hoare triple {15261#true} ~cond := #in~cond; {15424#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:02,444 INFO L290 TraceCheckUtils]: 53: Hoare triple {15424#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:02,444 INFO L290 TraceCheckUtils]: 54: Hoare triple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:02,445 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} {15384#(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; {15384#(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:10:02,445 INFO L272 TraceCheckUtils]: 56: Hoare triple {15384#(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)); {15261#true} is VALID [2022-04-27 13:10:02,445 INFO L290 TraceCheckUtils]: 57: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,445 INFO L290 TraceCheckUtils]: 58: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,445 INFO L290 TraceCheckUtils]: 59: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,446 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {15261#true} {15384#(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; {15384#(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:10:02,446 INFO L290 TraceCheckUtils]: 61: Hoare triple {15384#(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); {15453#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:02,447 INFO L290 TraceCheckUtils]: 62: Hoare triple {15453#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= 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; {15457#(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_~q~0 1))} is VALID [2022-04-27 13:10:02,447 INFO L290 TraceCheckUtils]: 63: Hoare triple {15457#(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_~q~0 1))} assume !false; {15457#(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_~q~0 1))} is VALID [2022-04-27 13:10:02,447 INFO L290 TraceCheckUtils]: 64: Hoare triple {15457#(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_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} is VALID [2022-04-27 13:10:02,448 INFO L290 TraceCheckUtils]: 65: Hoare triple {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} assume !false; {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} is VALID [2022-04-27 13:10:02,448 INFO L272 TraceCheckUtils]: 66: Hoare triple {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,448 INFO L290 TraceCheckUtils]: 67: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,448 INFO L290 TraceCheckUtils]: 68: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,448 INFO L290 TraceCheckUtils]: 69: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {15261#true} {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} #91#return; {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} is VALID [2022-04-27 13:10:02,449 INFO L272 TraceCheckUtils]: 71: Hoare triple {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L290 TraceCheckUtils]: 72: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L290 TraceCheckUtils]: 73: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L290 TraceCheckUtils]: 74: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {15261#true} {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} #93#return; {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} is VALID [2022-04-27 13:10:02,449 INFO L272 TraceCheckUtils]: 76: Hoare triple {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L290 TraceCheckUtils]: 77: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,449 INFO L290 TraceCheckUtils]: 78: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,450 INFO L290 TraceCheckUtils]: 79: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,450 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {15261#true} {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} #95#return; {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} is VALID [2022-04-27 13:10:02,450 INFO L272 TraceCheckUtils]: 81: Hoare triple {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~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)); {15261#true} is VALID [2022-04-27 13:10:02,450 INFO L290 TraceCheckUtils]: 82: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,450 INFO L290 TraceCheckUtils]: 83: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,450 INFO L290 TraceCheckUtils]: 84: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,451 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {15261#true} {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} #97#return; {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} is VALID [2022-04-27 13:10:02,452 INFO L290 TraceCheckUtils]: 86: Hoare triple {15464#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~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_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} is VALID [2022-04-27 13:10:02,453 INFO L290 TraceCheckUtils]: 87: Hoare triple {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} assume !false; {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} is VALID [2022-04-27 13:10:02,453 INFO L272 TraceCheckUtils]: 88: Hoare triple {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,453 INFO L290 TraceCheckUtils]: 89: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,453 INFO L290 TraceCheckUtils]: 90: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,453 INFO L290 TraceCheckUtils]: 91: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,453 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {15261#true} {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} #91#return; {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} is VALID [2022-04-27 13:10:02,454 INFO L272 TraceCheckUtils]: 93: Hoare triple {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L290 TraceCheckUtils]: 94: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L290 TraceCheckUtils]: 95: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L290 TraceCheckUtils]: 96: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {15261#true} {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} #93#return; {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} is VALID [2022-04-27 13:10:02,454 INFO L272 TraceCheckUtils]: 98: Hoare triple {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L290 TraceCheckUtils]: 99: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L290 TraceCheckUtils]: 100: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,454 INFO L290 TraceCheckUtils]: 101: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,457 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {15261#true} {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} #95#return; {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} is VALID [2022-04-27 13:10:02,457 INFO L272 TraceCheckUtils]: 103: Hoare triple {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~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)); {15261#true} is VALID [2022-04-27 13:10:02,457 INFO L290 TraceCheckUtils]: 104: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,457 INFO L290 TraceCheckUtils]: 105: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,457 INFO L290 TraceCheckUtils]: 106: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,458 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {15261#true} {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} #97#return; {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} is VALID [2022-04-27 13:10:02,459 INFO L290 TraceCheckUtils]: 108: Hoare triple {15531#(and (= main_~s~0 0) (<= 1 main_~k~0) (= main_~p~0 0) (= main_~a~0 (+ main_~c~0 main_~b~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_~q~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15598#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 1))} is VALID [2022-04-27 13:10:02,459 INFO L290 TraceCheckUtils]: 109: Hoare triple {15598#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 1))} assume !false; {15598#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 1))} is VALID [2022-04-27 13:10:02,460 INFO L272 TraceCheckUtils]: 110: Hoare triple {15598#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,460 INFO L290 TraceCheckUtils]: 111: Hoare triple {15261#true} ~cond := #in~cond; {15424#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:02,460 INFO L290 TraceCheckUtils]: 112: Hoare triple {15424#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:02,460 INFO L290 TraceCheckUtils]: 113: Hoare triple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:10:02,462 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} {15598#(and (= main_~s~0 0) (= main_~p~0 0) (<= 2 main_~k~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_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~q~0 1))} #91#return; {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} is VALID [2022-04-27 13:10:02,462 INFO L272 TraceCheckUtils]: 115: Hoare triple {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,462 INFO L290 TraceCheckUtils]: 116: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,462 INFO L290 TraceCheckUtils]: 117: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,462 INFO L290 TraceCheckUtils]: 118: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,462 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {15261#true} {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} #93#return; {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} is VALID [2022-04-27 13:10:02,463 INFO L272 TraceCheckUtils]: 120: Hoare triple {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L290 TraceCheckUtils]: 121: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L290 TraceCheckUtils]: 122: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L290 TraceCheckUtils]: 123: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {15261#true} {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} #95#return; {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} is VALID [2022-04-27 13:10:02,463 INFO L272 TraceCheckUtils]: 125: Hoare triple {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~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)); {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L290 TraceCheckUtils]: 126: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L290 TraceCheckUtils]: 127: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:10:02,463 INFO L290 TraceCheckUtils]: 128: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:10:02,464 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {15261#true} {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} #97#return; {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} is VALID [2022-04-27 13:10:02,465 INFO L290 TraceCheckUtils]: 130: Hoare triple {15617#(and (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~p~0 0) (<= 2 main_~k~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~q~0 1) (not (<= (+ main_~c~0 (* main_~b~0 main_~k~0)) main_~x~0)))} assume !(~c~0 >= ~b~0); {15666#(and (= main_~s~0 0) (= (* main_~x~0 2) (* main_~k~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (< main_~c~0 main_~x~0) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (< main_~x~0 (+ main_~c~0 (* main_~k~0 main_~x~0))) (= main_~q~0 1))} is VALID [2022-04-27 13:10:02,466 INFO L290 TraceCheckUtils]: 131: Hoare triple {15666#(and (= main_~s~0 0) (= (* main_~x~0 2) (* main_~k~0 main_~x~0)) (= main_~p~0 0) (= main_~r~0 1) (< main_~c~0 main_~x~0) (= (+ main_~c~0 (* main_~k~0 main_~x~0)) main_~y~0) (< main_~x~0 (+ main_~c~0 (* main_~k~0 main_~x~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; {15670#(and (= (* main_~x~0 2) (* main_~x~0 (* (- 1) main_~q~0))) (< (+ (* main_~q~0 main_~x~0) main_~y~0) main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0))} is VALID [2022-04-27 13:10:02,467 INFO L290 TraceCheckUtils]: 132: Hoare triple {15670#(and (= (* main_~x~0 2) (* main_~x~0 (* (- 1) main_~q~0))) (< (+ (* main_~q~0 main_~x~0) main_~y~0) main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0))} assume !false; {15670#(and (= (* main_~x~0 2) (* main_~x~0 (* (- 1) main_~q~0))) (< (+ (* main_~q~0 main_~x~0) main_~y~0) main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0))} is VALID [2022-04-27 13:10:02,467 INFO L290 TraceCheckUtils]: 133: Hoare triple {15670#(and (= (* main_~x~0 2) (* main_~x~0 (* (- 1) main_~q~0))) (< (+ (* main_~q~0 main_~x~0) main_~y~0) main_~x~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0))} assume !(0 != ~b~0); {15677#(and (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* main_~q~0 main_~x~0) main_~y~0) 0) (= (+ (* main_~x~0 2) (* main_~q~0 main_~x~0)) 0))} is VALID [2022-04-27 13:10:02,468 INFO L272 TraceCheckUtils]: 134: Hoare triple {15677#(and (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ (* main_~q~0 main_~x~0) main_~y~0) 0) (= (+ (* main_~x~0 2) (* main_~q~0 main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {15681#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:10:02,468 INFO L290 TraceCheckUtils]: 135: Hoare triple {15681#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15685#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:02,468 INFO L290 TraceCheckUtils]: 136: Hoare triple {15685#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15262#false} is VALID [2022-04-27 13:10:02,468 INFO L290 TraceCheckUtils]: 137: Hoare triple {15262#false} assume !false; {15262#false} is VALID [2022-04-27 13:10:02,469 INFO L134 CoverageAnalysis]: Checked inductivity of 615 backedges. 69 proven. 90 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-04-27 13:10:02,469 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:11:21,859 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 13:11:23,054 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 13:12:21,128 INFO L290 TraceCheckUtils]: 137: Hoare triple {15262#false} assume !false; {15262#false} is VALID [2022-04-27 13:12:21,128 INFO L290 TraceCheckUtils]: 136: Hoare triple {15685#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {15262#false} is VALID [2022-04-27 13:12:21,128 INFO L290 TraceCheckUtils]: 135: Hoare triple {15681#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {15685#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:12:21,129 INFO L272 TraceCheckUtils]: 134: Hoare triple {15701#(= (+ (* 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)); {15681#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:12:21,129 INFO L290 TraceCheckUtils]: 133: Hoare triple {15705#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {15701#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-27 13:12:21,129 INFO L290 TraceCheckUtils]: 132: Hoare triple {15705#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !false; {15705#(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:12:21,766 INFO L290 TraceCheckUtils]: 131: Hoare triple {15712#(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; {15705#(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:12:21,767 INFO L290 TraceCheckUtils]: 130: Hoare triple {15716#(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); {15712#(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:12:21,768 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {15261#true} {15716#(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; {15716#(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:12:21,768 INFO L290 TraceCheckUtils]: 128: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L290 TraceCheckUtils]: 127: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L290 TraceCheckUtils]: 126: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L272 TraceCheckUtils]: 125: Hoare triple {15716#(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)); {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L284 TraceCheckUtils]: 124: Hoare quadruple {15261#true} {15716#(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; {15716#(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:12:21,768 INFO L290 TraceCheckUtils]: 123: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L290 TraceCheckUtils]: 122: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L290 TraceCheckUtils]: 121: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,768 INFO L272 TraceCheckUtils]: 120: Hoare triple {15716#(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)); {15261#true} is VALID [2022-04-27 13:12:21,769 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {15261#true} {15716#(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; {15716#(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:12:21,769 INFO L290 TraceCheckUtils]: 118: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,769 INFO L290 TraceCheckUtils]: 117: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,769 INFO L290 TraceCheckUtils]: 116: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,769 INFO L272 TraceCheckUtils]: 115: Hoare triple {15716#(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)); {15261#true} is VALID [2022-04-27 13:12:21,770 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} {15765#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {15716#(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:12:21,770 INFO L290 TraceCheckUtils]: 113: Hoare triple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:21,771 INFO L290 TraceCheckUtils]: 112: Hoare triple {15775#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:21,771 INFO L290 TraceCheckUtils]: 111: Hoare triple {15261#true} ~cond := #in~cond; {15775#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:12:21,771 INFO L272 TraceCheckUtils]: 110: Hoare triple {15765#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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)); {15261#true} is VALID [2022-04-27 13:12:21,771 INFO L290 TraceCheckUtils]: 109: Hoare triple {15765#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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; {15765#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:12:21,850 INFO L290 TraceCheckUtils]: 108: Hoare triple {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15765#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~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:12:21,851 INFO L284 TraceCheckUtils]: 107: Hoare quadruple {15261#true} {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #97#return; {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,851 INFO L290 TraceCheckUtils]: 106: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L290 TraceCheckUtils]: 105: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L290 TraceCheckUtils]: 104: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L272 TraceCheckUtils]: 103: Hoare triple {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~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)); {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {15261#true} {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #95#return; {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,852 INFO L290 TraceCheckUtils]: 101: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L290 TraceCheckUtils]: 100: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L290 TraceCheckUtils]: 99: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,852 INFO L272 TraceCheckUtils]: 98: Hoare triple {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:21,853 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {15261#true} {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #93#return; {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,853 INFO L290 TraceCheckUtils]: 96: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,853 INFO L290 TraceCheckUtils]: 95: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,853 INFO L290 TraceCheckUtils]: 94: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,853 INFO L272 TraceCheckUtils]: 93: Hoare triple {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:21,854 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {15261#true} {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #91#return; {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,854 INFO L290 TraceCheckUtils]: 91: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,854 INFO L290 TraceCheckUtils]: 90: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,854 INFO L290 TraceCheckUtils]: 89: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,854 INFO L272 TraceCheckUtils]: 88: Hoare triple {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:21,854 INFO L290 TraceCheckUtils]: 87: Hoare triple {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} assume !false; {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,856 INFO L290 TraceCheckUtils]: 86: Hoare triple {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {15785#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (<= (+ main_~k~0 1) (div main_~a~0 main_~b~0))) (= main_~b~0 0) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,857 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {15261#true} {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #97#return; {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,857 INFO L290 TraceCheckUtils]: 84: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,857 INFO L290 TraceCheckUtils]: 83: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,857 INFO L290 TraceCheckUtils]: 82: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,857 INFO L272 TraceCheckUtils]: 81: Hoare triple {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~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)); {15261#true} is VALID [2022-04-27 13:12:21,857 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {15261#true} {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #95#return; {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,857 INFO L290 TraceCheckUtils]: 79: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L290 TraceCheckUtils]: 78: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L290 TraceCheckUtils]: 77: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L272 TraceCheckUtils]: 76: Hoare triple {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {15261#true} {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #93#return; {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,858 INFO L290 TraceCheckUtils]: 74: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L290 TraceCheckUtils]: 73: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L290 TraceCheckUtils]: 72: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,858 INFO L272 TraceCheckUtils]: 71: Hoare triple {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:21,859 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {15261#true} {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} #91#return; {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,859 INFO L290 TraceCheckUtils]: 69: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:21,859 INFO L290 TraceCheckUtils]: 68: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:21,859 INFO L290 TraceCheckUtils]: 67: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:21,859 INFO L272 TraceCheckUtils]: 66: Hoare triple {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:21,860 INFO L290 TraceCheckUtils]: 65: Hoare triple {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} assume !false; {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,860 INFO L290 TraceCheckUtils]: 64: Hoare triple {15919#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (= (* main_~b~0 (div main_~a~0 main_~b~0)) (* main_~b~0 2))) (= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {15852#(or (not (= (+ main_~b~0 main_~a~0 (* (- 1) main_~b~0 (div main_~a~0 main_~b~0))) (+ main_~c~0 (* (- 1) main_~b~0)))) (not (= (mod main_~a~0 main_~b~0) 0)) (= main_~b~0 0) (< (div main_~a~0 main_~b~0) (+ main_~k~0 2)) (= (+ (* (+ (* (- 1) (* main_~s~0 (div main_~a~0 main_~b~0))) main_~r~0) main_~y~0) (* (+ (* (- 1) main_~q~0 (div main_~a~0 main_~b~0)) main_~p~0) main_~x~0)) 0) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:21,861 INFO L290 TraceCheckUtils]: 63: Hoare triple {15919#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (= (* main_~b~0 (div main_~a~0 main_~b~0)) (* main_~b~0 2))) (= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} assume !false; {15919#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (= (* main_~b~0 (div main_~a~0 main_~b~0)) (* main_~b~0 2))) (= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:22,532 INFO L290 TraceCheckUtils]: 62: Hoare triple {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {15919#(or (not (= (mod main_~a~0 main_~b~0) 0)) (not (= (* main_~b~0 (div main_~a~0 main_~b~0)) (* main_~b~0 2))) (= main_~b~0 0) (= (+ (* main_~y~0 main_~s~0 (div main_~a~0 main_~b~0)) (* main_~q~0 main_~x~0 (div main_~a~0 main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (+ main_~b~0 (* main_~b~0 (div main_~a~0 main_~b~0))) main_~a~0))} is VALID [2022-04-27 13:12:22,533 INFO L290 TraceCheckUtils]: 61: Hoare triple {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} assume !(~c~0 >= ~b~0); {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,533 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {15261#true} {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} #97#return; {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,533 INFO L290 TraceCheckUtils]: 59: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,534 INFO L290 TraceCheckUtils]: 58: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,534 INFO L290 TraceCheckUtils]: 57: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,534 INFO L272 TraceCheckUtils]: 56: Hoare triple {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) 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)); {15261#true} is VALID [2022-04-27 13:12:22,534 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} #95#return; {15926#(or (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,535 INFO L290 TraceCheckUtils]: 54: Hoare triple {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:22,535 INFO L290 TraceCheckUtils]: 53: Hoare triple {15775#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {15428#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:22,535 INFO L290 TraceCheckUtils]: 52: Hoare triple {15261#true} ~cond := #in~cond; {15775#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:12:22,535 INFO L272 TraceCheckUtils]: 51: Hoare triple {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,536 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {15261#true} {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} #93#return; {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,536 INFO L290 TraceCheckUtils]: 49: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,536 INFO L290 TraceCheckUtils]: 48: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,536 INFO L290 TraceCheckUtils]: 47: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,536 INFO L272 TraceCheckUtils]: 46: Hoare triple {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,537 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {15261#true} {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} #91#return; {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,537 INFO L290 TraceCheckUtils]: 44: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,537 INFO L290 TraceCheckUtils]: 43: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,537 INFO L290 TraceCheckUtils]: 42: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,537 INFO L272 TraceCheckUtils]: 41: Hoare triple {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,537 INFO L290 TraceCheckUtils]: 40: Hoare triple {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} assume !false; {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,538 INFO L290 TraceCheckUtils]: 39: Hoare triple {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {15948#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (div 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)) (div main_~b~0 main_~c~0) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~c~0 0) (not (= (* (div main_~b~0 main_~c~0) main_~c~0) (* main_~c~0 2))) (not (= (mod main_~b~0 main_~c~0) 0)) (<= (+ (* (div main_~b~0 main_~c~0) main_~c~0) main_~c~0) main_~b~0))} is VALID [2022-04-27 13:12:22,538 INFO L290 TraceCheckUtils]: 38: Hoare triple {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} assume !false; {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} is VALID [2022-04-27 13:12:22,539 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {15261#true} {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} #89#return; {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} is VALID [2022-04-27 13:12:22,539 INFO L290 TraceCheckUtils]: 36: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,539 INFO L290 TraceCheckUtils]: 35: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,539 INFO L290 TraceCheckUtils]: 34: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,539 INFO L272 TraceCheckUtils]: 33: Hoare triple {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,544 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {15261#true} {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} #87#return; {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} is VALID [2022-04-27 13:12:22,544 INFO L290 TraceCheckUtils]: 31: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,544 INFO L290 TraceCheckUtils]: 30: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,544 INFO L290 TraceCheckUtils]: 29: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,544 INFO L272 TraceCheckUtils]: 28: Hoare triple {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 27: Hoare triple {15261#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; {15997#(or (= main_~a~0 0) (not (= (* main_~a~0 2) (* (div main_~b~0 main_~a~0) main_~a~0))) (<= (+ (* (div main_~b~0 main_~a~0) main_~a~0) main_~a~0) main_~b~0) (= (+ (* (div main_~b~0 main_~a~0) main_~y~0 main_~r~0) (* (div main_~b~0 main_~a~0) main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (mod main_~b~0 main_~a~0) 0)))} is VALID [2022-04-27 13:12:22,546 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {15261#true} {15261#true} #85#return; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 25: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 24: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 23: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L272 TraceCheckUtils]: 22: Hoare triple {15261#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {15261#true} {15261#true} #83#return; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 20: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L272 TraceCheckUtils]: 17: Hoare triple {15261#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {15261#true} {15261#true} #81#return; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 15: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 14: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,546 INFO L272 TraceCheckUtils]: 12: Hoare triple {15261#true} call assume_abort_if_not((if ~y~0 >= 0 && ~y~0 <= 10 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 11: Hoare triple {15261#true} assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15261#true} {15261#true} #79#return; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 9: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 8: Hoare triple {15261#true} assume !(0 == ~cond); {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 7: Hoare triple {15261#true} ~cond := #in~cond; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L272 TraceCheckUtils]: 6: Hoare triple {15261#true} call assume_abort_if_not((if ~x~0 >= 0 && ~x~0 <= 10 then 1 else 0)); {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 5: Hoare triple {15261#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; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L272 TraceCheckUtils]: 4: Hoare triple {15261#true} call #t~ret6 := main(); {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15261#true} {15261#true} #103#return; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {15261#true} assume true; {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {15261#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); {15261#true} is VALID [2022-04-27 13:12:22,547 INFO L272 TraceCheckUtils]: 0: Hoare triple {15261#true} call ULTIMATE.init(); {15261#true} is VALID [2022-04-27 13:12:22,548 INFO L134 CoverageAnalysis]: Checked inductivity of 615 backedges. 69 proven. 90 refuted. 0 times theorem prover too weak. 456 trivial. 0 not checked. [2022-04-27 13:12:22,548 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:12:22,548 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [749654566] [2022-04-27 13:12:22,548 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:12:22,548 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1794512031] [2022-04-27 13:12:22,548 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1794512031] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:12:22,548 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:12:22,548 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17] total 29 [2022-04-27 13:12:22,548 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1318005610] [2022-04-27 13:12:22,548 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:12:22,549 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 16 states have call successors, (44), 2 states have call predecessors, (44), 2 states have return successors, (41), 12 states have call predecessors, (41), 14 states have call successors, (41) Word has length 138 [2022-04-27 13:12:22,549 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:12:22,549 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 16 states have call successors, (44), 2 states have call predecessors, (44), 2 states have return successors, (41), 12 states have call predecessors, (41), 14 states have call successors, (41) [2022-04-27 13:12:22,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:12:22,932 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-27 13:12:22,932 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:12:22,932 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-27 13:12:22,932 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=135, Invalid=674, Unknown=3, NotChecked=0, Total=812 [2022-04-27 13:12:22,932 INFO L87 Difference]: Start difference. First operand 196 states and 251 transitions. Second operand has 29 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 16 states have call successors, (44), 2 states have call predecessors, (44), 2 states have return successors, (41), 12 states have call predecessors, (41), 14 states have call successors, (41) [2022-04-27 13:12:41,920 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:12:52,541 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:13:03,255 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:13:07,560 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:13:10,100 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:13:12,360 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:13:26,992 WARN L232 SmtUtils]: Spent 13.78s on a formula simplification. DAG size of input: 117 DAG size of output: 115 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:13:43,062 WARN L232 SmtUtils]: Spent 12.00s on a formula simplification. DAG size of input: 103 DAG size of output: 101 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:13:51,196 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:13:53,235 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:14:15,607 WARN L232 SmtUtils]: Spent 15.07s on a formula simplification that was a NOOP. DAG size: 74 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:14:18,430 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:14:20,656 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:14:22,659 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:14:24,719 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:14:36,350 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.91s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:14:37,501 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.05s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:15:21,175 WARN L232 SmtUtils]: Spent 39.62s on a formula simplification. DAG size of input: 121 DAG size of output: 119 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:16:05,219 WARN L232 SmtUtils]: Spent 30.66s on a formula simplification. DAG size of input: 100 DAG size of output: 98 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:16:12,020 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:16:20,049 WARN L232 SmtUtils]: Spent 6.41s on a formula simplification. DAG size of input: 96 DAG size of output: 94 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:16:27,901 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 []