/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_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 12:52:39,431 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 12:52:39,433 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 12:52:39,454 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 12:52:39,454 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 12:52:39,455 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 12:52:39,456 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 12:52:39,457 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 12:52:39,458 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 12:52:39,458 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 12:52:39,459 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 12:52:39,459 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 12:52:39,460 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 12:52:39,460 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 12:52:39,461 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 12:52:39,462 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 12:52:39,462 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 12:52:39,463 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 12:52:39,464 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 12:52:39,465 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 12:52:39,466 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 12:52:39,467 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 12:52:39,468 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 12:52:39,468 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 12:52:39,469 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 12:52:39,471 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 12:52:39,471 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 12:52:39,471 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 12:52:39,472 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 12:52:39,472 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 12:52:39,473 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 12:52:39,473 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 12:52:39,473 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 12:52:39,474 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 12:52:39,474 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 12:52:39,475 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 12:52:39,475 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 12:52:39,476 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 12:52:39,476 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 12:52:39,476 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 12:52:39,476 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 12:52:39,477 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 12:52:39,477 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 12:52:39,491 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 12:52:39,491 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 12:52:39,491 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 12:52:39,492 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 12:52:39,492 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 12:52:39,492 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 12:52:39,492 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 12:52:39,493 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 12:52:39,493 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 12:52:39,494 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:52:39,494 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 12:52:39,494 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 12:52:39,495 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 12:52:39,495 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 12:52:39,495 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 12:52:39,495 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 12:52:39,495 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 12:52:39,495 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 12:52:39,495 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 12:52:39,627 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 12:52:39,639 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 12:52:39,640 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 12:52:39,641 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 12:52:39,642 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 12:52:39,642 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound10.c [2022-04-27 12:52:39,672 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/31452e236/f6b0f5577adb4dfeb0c2f6a48c95df7b/FLAGfcd27e261 [2022-04-27 12:52:40,041 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 12:52:40,041 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound10.c [2022-04-27 12:52:40,046 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/31452e236/f6b0f5577adb4dfeb0c2f6a48c95df7b/FLAGfcd27e261 [2022-04-27 12:52:40,055 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/31452e236/f6b0f5577adb4dfeb0c2f6a48c95df7b [2022-04-27 12:52:40,057 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 12:52:40,058 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 12:52:40,059 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 12:52:40,059 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 12:52:40,073 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 12:52:40,074 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,074 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@65986d4c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40, skipping insertion in model container [2022-04-27 12:52:40,075 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,091 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 12:52:40,100 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 12:52:40,213 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_unwindbound10.c[490,503] [2022-04-27 12:52:40,238 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:52:40,245 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 12:52:40,260 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_unwindbound10.c[490,503] [2022-04-27 12:52:40,281 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 12:52:40,289 INFO L208 MainTranslator]: Completed translation [2022-04-27 12:52:40,290 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40 WrapperNode [2022-04-27 12:52:40,290 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 12:52:40,291 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 12:52:40,291 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 12:52:40,291 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 12:52:40,298 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,298 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,302 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,302 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,307 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,309 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,310 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,311 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 12:52:40,312 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 12:52:40,312 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 12:52:40,312 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 12:52:40,323 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (1/1) ... [2022-04-27 12:52:40,341 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 12:52:40,350 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:40,380 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 12:52:40,390 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 12:52:40,409 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 12:52:40,410 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 12:52:40,410 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 12:52:40,410 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 12:52:40,410 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 12:52:40,410 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 12:52:40,410 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 12:52:40,410 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 12:52:40,410 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 12:52:40,411 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 12:52:40,453 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 12:52:40,454 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 12:52:40,586 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 12:52:40,591 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 12:52:40,592 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-27 12:52:40,593 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:52:40 BoogieIcfgContainer [2022-04-27 12:52:40,593 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 12:52:40,594 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 12:52:40,594 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 12:52:40,596 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 12:52:40,596 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 12:52:40" (1/3) ... [2022-04-27 12:52:40,597 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1099a373 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:52:40, skipping insertion in model container [2022-04-27 12:52:40,597 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 12:52:40" (2/3) ... [2022-04-27 12:52:40,597 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1099a373 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 12:52:40, skipping insertion in model container [2022-04-27 12:52:40,597 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 12:52:40" (3/3) ... [2022-04-27 12:52:40,598 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_unwindbound10.c [2022-04-27 12:52:40,607 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 12:52:40,607 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 12:52:40,668 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 12:52:40,674 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@118b5374, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@4c515553 [2022-04-27 12:52:40,675 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 12:52:40,683 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 23 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-27 12:52:40,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 12:52:40,691 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:40,692 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:40,692 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:40,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:40,699 INFO L85 PathProgramCache]: Analyzing trace with hash 1950618521, now seen corresponding path program 1 times [2022-04-27 12:52:40,705 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:40,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057623787] [2022-04-27 12:52:40,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:40,707 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:40,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:40,866 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 12:52:40,869 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:40,880 INFO L290 TraceCheckUtils]: 0: Hoare triple {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {42#true} is VALID [2022-04-27 12:52:40,880 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-27 12:52:40,880 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-27 12:52:40,881 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 12:52:40,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:40,892 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,892 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,892 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,893 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-27 12:52:40,893 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 12:52:40,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:40,902 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,903 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,903 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,903 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-27 12:52:40,903 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-27 12:52:40,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:40,910 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,910 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,910 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,910 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-27 12:52:40,911 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-27 12:52:40,912 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:40,915 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,916 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,916 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,916 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #84#return; {43#false} is VALID [2022-04-27 12:52:40,917 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 12:52:40,917 INFO L290 TraceCheckUtils]: 1: Hoare triple {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {42#true} is VALID [2022-04-27 12:52:40,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-27 12:52:40,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-27 12:52:40,918 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret8 := main(); {42#true} is VALID [2022-04-27 12:52:40,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {42#true} is VALID [2022-04-27 12:52:40,918 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-27 12:52:40,918 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,919 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,919 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,919 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-27 12:52:40,919 INFO L272 TraceCheckUtils]: 11: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-27 12:52:40,919 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,920 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,920 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-27 12:52:40,920 INFO L290 TraceCheckUtils]: 16: Hoare triple {43#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; {43#false} is VALID [2022-04-27 12:52:40,920 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {42#true} is VALID [2022-04-27 12:52:40,920 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,922 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,922 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,922 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-27 12:52:40,922 INFO L272 TraceCheckUtils]: 22: Hoare triple {43#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {42#true} is VALID [2022-04-27 12:52:40,922 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-27 12:52:40,923 INFO L290 TraceCheckUtils]: 24: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-27 12:52:40,923 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-27 12:52:40,923 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {43#false} {43#false} #84#return; {43#false} is VALID [2022-04-27 12:52:40,923 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !true; {43#false} is VALID [2022-04-27 12:52:40,923 INFO L272 TraceCheckUtils]: 28: Hoare triple {43#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {43#false} is VALID [2022-04-27 12:52:40,924 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-27 12:52:40,924 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-27 12:52:40,924 INFO L290 TraceCheckUtils]: 31: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-27 12:52:40,924 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:40,925 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:40,925 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2057623787] [2022-04-27 12:52:40,925 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2057623787] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:40,925 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:40,925 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 12:52:40,926 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1133141262] [2022-04-27 12:52:40,927 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:40,930 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 32 [2022-04-27 12:52:40,931 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:40,933 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:40,970 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:40,971 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 12:52:40,971 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:40,989 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 12:52:40,989 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 12:52:40,991 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 23 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:41,157 INFO L93 Difference]: Finished difference Result 72 states and 112 transitions. [2022-04-27 12:52:41,157 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 12:52:41,157 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 32 [2022-04-27 12:52:41,158 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:41,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-04-27 12:52:41,166 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-04-27 12:52:41,171 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 112 transitions. [2022-04-27 12:52:41,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:41,265 INFO L225 Difference]: With dead ends: 72 [2022-04-27 12:52:41,266 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 12:52:41,268 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 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 12:52:41,270 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:41,271 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 49 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:52:41,281 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 12:52:41,291 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-27 12:52:41,291 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:41,292 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,292 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,292 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:41,296 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-27 12:52:41,296 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 12:52:41,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:41,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:41,297 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 35 states. [2022-04-27 12:52:41,297 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 35 states. [2022-04-27 12:52:41,300 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:41,300 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-27 12:52:41,300 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-27 12:52:41,301 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:41,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:41,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:41,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:41,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 45 transitions. [2022-04-27 12:52:41,304 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 45 transitions. Word has length 32 [2022-04-27 12:52:41,304 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:41,305 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 45 transitions. [2022-04-27 12:52:41,305 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,305 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 45 transitions. [2022-04-27 12:52:41,306 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-27 12:52:41,306 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:41,306 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:52:41,306 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 12:52:41,306 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:41,307 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:41,307 INFO L85 PathProgramCache]: Analyzing trace with hash -1734391985, now seen corresponding path program 1 times [2022-04-27 12:52:41,307 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:41,307 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1762181767] [2022-04-27 12:52:41,307 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:41,307 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:41,322 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:41,322 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1667980154] [2022-04-27 12:52:41,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:41,322 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:41,322 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:41,323 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 12:52:41,324 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 12:52:41,393 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:41,395 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 12:52:41,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:41,416 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:41,563 INFO L272 TraceCheckUtils]: 0: Hoare triple {292#true} call ULTIMATE.init(); {292#true} is VALID [2022-04-27 12:52:41,564 INFO L290 TraceCheckUtils]: 1: Hoare triple {292#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {300#(<= ~counter~0 0)} assume true; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,565 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {300#(<= ~counter~0 0)} {292#true} #98#return; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,565 INFO L272 TraceCheckUtils]: 4: Hoare triple {300#(<= ~counter~0 0)} call #t~ret8 := main(); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,566 INFO L290 TraceCheckUtils]: 5: Hoare triple {300#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,566 INFO L272 TraceCheckUtils]: 6: Hoare triple {300#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,567 INFO L290 TraceCheckUtils]: 7: Hoare triple {300#(<= ~counter~0 0)} ~cond := #in~cond; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,567 INFO L290 TraceCheckUtils]: 8: Hoare triple {300#(<= ~counter~0 0)} assume !(0 == ~cond); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,567 INFO L290 TraceCheckUtils]: 9: Hoare triple {300#(<= ~counter~0 0)} assume true; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,568 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {300#(<= ~counter~0 0)} {300#(<= ~counter~0 0)} #78#return; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,568 INFO L272 TraceCheckUtils]: 11: Hoare triple {300#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,568 INFO L290 TraceCheckUtils]: 12: Hoare triple {300#(<= ~counter~0 0)} ~cond := #in~cond; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,569 INFO L290 TraceCheckUtils]: 13: Hoare triple {300#(<= ~counter~0 0)} assume !(0 == ~cond); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,569 INFO L290 TraceCheckUtils]: 14: Hoare triple {300#(<= ~counter~0 0)} assume true; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,570 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {300#(<= ~counter~0 0)} {300#(<= ~counter~0 0)} #80#return; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,570 INFO L290 TraceCheckUtils]: 16: Hoare triple {300#(<= ~counter~0 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; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,570 INFO L272 TraceCheckUtils]: 17: Hoare triple {300#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,571 INFO L290 TraceCheckUtils]: 18: Hoare triple {300#(<= ~counter~0 0)} ~cond := #in~cond; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,571 INFO L290 TraceCheckUtils]: 19: Hoare triple {300#(<= ~counter~0 0)} assume !(0 == ~cond); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,571 INFO L290 TraceCheckUtils]: 20: Hoare triple {300#(<= ~counter~0 0)} assume true; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,572 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {300#(<= ~counter~0 0)} {300#(<= ~counter~0 0)} #82#return; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,572 INFO L272 TraceCheckUtils]: 22: Hoare triple {300#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,573 INFO L290 TraceCheckUtils]: 23: Hoare triple {300#(<= ~counter~0 0)} ~cond := #in~cond; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,573 INFO L290 TraceCheckUtils]: 24: Hoare triple {300#(<= ~counter~0 0)} assume !(0 == ~cond); {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,573 INFO L290 TraceCheckUtils]: 25: Hoare triple {300#(<= ~counter~0 0)} assume true; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,574 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {300#(<= ~counter~0 0)} {300#(<= ~counter~0 0)} #84#return; {300#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:41,574 INFO L290 TraceCheckUtils]: 27: Hoare triple {300#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {379#(<= |main_#t~post6| 0)} is VALID [2022-04-27 12:52:41,575 INFO L290 TraceCheckUtils]: 28: Hoare triple {379#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {293#false} is VALID [2022-04-27 12:52:41,575 INFO L272 TraceCheckUtils]: 29: Hoare triple {293#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {293#false} is VALID [2022-04-27 12:52:41,575 INFO L290 TraceCheckUtils]: 30: Hoare triple {293#false} ~cond := #in~cond; {293#false} is VALID [2022-04-27 12:52:41,575 INFO L290 TraceCheckUtils]: 31: Hoare triple {293#false} assume 0 == ~cond; {293#false} is VALID [2022-04-27 12:52:41,575 INFO L290 TraceCheckUtils]: 32: Hoare triple {293#false} assume !false; {293#false} is VALID [2022-04-27 12:52:41,575 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:41,575 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:52:41,576 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:41,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1762181767] [2022-04-27 12:52:41,576 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:41,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1667980154] [2022-04-27 12:52:41,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1667980154] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:41,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:41,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 12:52:41,577 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [928207631] [2022-04-27 12:52:41,577 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:41,577 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:52:41,578 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:41,578 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,595 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:41,595 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 12:52:41,595 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:41,595 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 12:52:41,595 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 12:52:41,596 INFO L87 Difference]: Start difference. First operand 34 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:41,663 INFO L93 Difference]: Finished difference Result 44 states and 56 transitions. [2022-04-27 12:52:41,663 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 12:52:41,663 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-27 12:52:41,663 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:41,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-04-27 12:52:41,666 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-04-27 12:52:41,667 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 56 transitions. [2022-04-27 12:52:41,705 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:41,706 INFO L225 Difference]: With dead ends: 44 [2022-04-27 12:52:41,706 INFO L226 Difference]: Without dead ends: 36 [2022-04-27 12:52:41,707 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 12:52:41,707 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:41,708 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 110 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:52:41,708 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-27 12:52:41,715 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2022-04-27 12:52:41,715 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:41,715 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,716 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,716 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:41,718 INFO L93 Difference]: Finished difference Result 36 states and 47 transitions. [2022-04-27 12:52:41,718 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-27 12:52:41,719 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:41,719 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:41,719 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 36 states. [2022-04-27 12:52:41,719 INFO L87 Difference]: Start difference. First operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 36 states. [2022-04-27 12:52:41,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:41,721 INFO L93 Difference]: Finished difference Result 36 states and 47 transitions. [2022-04-27 12:52:41,721 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-27 12:52:41,722 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:41,722 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:41,722 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:41,722 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:41,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:41,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 47 transitions. [2022-04-27 12:52:41,724 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 47 transitions. Word has length 33 [2022-04-27 12:52:41,724 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:41,724 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 47 transitions. [2022-04-27 12:52:41,724 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:41,724 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-27 12:52:41,725 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-27 12:52:41,725 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:41,725 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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 12:52:41,744 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 12:52:41,944 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 12:52:41,944 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:41,945 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:41,945 INFO L85 PathProgramCache]: Analyzing trace with hash 2066454233, now seen corresponding path program 1 times [2022-04-27 12:52:41,945 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:41,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [836510439] [2022-04-27 12:52:41,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:41,945 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:41,964 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:41,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [445691299] [2022-04-27 12:52:41,964 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:41,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:41,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:41,981 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 12:52:41,997 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 12:52:42,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:42,023 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:52:42,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:42,033 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:42,157 INFO L272 TraceCheckUtils]: 0: Hoare triple {587#true} call ULTIMATE.init(); {587#true} is VALID [2022-04-27 12:52:42,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {587#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {587#true} is VALID [2022-04-27 12:52:42,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,157 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {587#true} {587#true} #98#return; {587#true} is VALID [2022-04-27 12:52:42,157 INFO L272 TraceCheckUtils]: 4: Hoare triple {587#true} call #t~ret8 := main(); {587#true} is VALID [2022-04-27 12:52:42,157 INFO L290 TraceCheckUtils]: 5: Hoare triple {587#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {587#true} is VALID [2022-04-27 12:52:42,158 INFO L272 TraceCheckUtils]: 6: Hoare triple {587#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {587#true} ~cond := #in~cond; {587#true} is VALID [2022-04-27 12:52:42,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {587#true} assume !(0 == ~cond); {587#true} is VALID [2022-04-27 12:52:42,158 INFO L290 TraceCheckUtils]: 9: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,158 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {587#true} {587#true} #78#return; {587#true} is VALID [2022-04-27 12:52:42,158 INFO L272 TraceCheckUtils]: 11: Hoare triple {587#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {587#true} ~cond := #in~cond; {628#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:42,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {628#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {632#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:42,159 INFO L290 TraceCheckUtils]: 14: Hoare triple {632#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {632#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:42,160 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {632#(not (= |assume_abort_if_not_#in~cond| 0))} {587#true} #80#return; {639#(<= 1 main_~y~0)} is VALID [2022-04-27 12:52:42,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {639#(<= 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; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,161 INFO L272 TraceCheckUtils]: 17: Hoare triple {643#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,161 INFO L290 TraceCheckUtils]: 18: Hoare triple {587#true} ~cond := #in~cond; {587#true} is VALID [2022-04-27 12:52:42,161 INFO L290 TraceCheckUtils]: 19: Hoare triple {587#true} assume !(0 == ~cond); {587#true} is VALID [2022-04-27 12:52:42,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,163 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {587#true} {643#(<= 1 main_~b~0)} #82#return; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,163 INFO L272 TraceCheckUtils]: 22: Hoare triple {643#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,164 INFO L290 TraceCheckUtils]: 23: Hoare triple {587#true} ~cond := #in~cond; {587#true} is VALID [2022-04-27 12:52:42,164 INFO L290 TraceCheckUtils]: 24: Hoare triple {587#true} assume !(0 == ~cond); {587#true} is VALID [2022-04-27 12:52:42,164 INFO L290 TraceCheckUtils]: 25: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,164 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {587#true} {643#(<= 1 main_~b~0)} #84#return; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,165 INFO L290 TraceCheckUtils]: 27: Hoare triple {643#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,165 INFO L290 TraceCheckUtils]: 28: Hoare triple {643#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,166 INFO L290 TraceCheckUtils]: 29: Hoare triple {643#(<= 1 main_~b~0)} assume !(0 != ~b~0); {588#false} is VALID [2022-04-27 12:52:42,166 INFO L272 TraceCheckUtils]: 30: Hoare triple {588#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {588#false} is VALID [2022-04-27 12:52:42,166 INFO L290 TraceCheckUtils]: 31: Hoare triple {588#false} ~cond := #in~cond; {588#false} is VALID [2022-04-27 12:52:42,166 INFO L290 TraceCheckUtils]: 32: Hoare triple {588#false} assume 0 == ~cond; {588#false} is VALID [2022-04-27 12:52:42,166 INFO L290 TraceCheckUtils]: 33: Hoare triple {588#false} assume !false; {588#false} is VALID [2022-04-27 12:52:42,166 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-27 12:52:42,166 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:42,359 INFO L290 TraceCheckUtils]: 33: Hoare triple {588#false} assume !false; {588#false} is VALID [2022-04-27 12:52:42,359 INFO L290 TraceCheckUtils]: 32: Hoare triple {588#false} assume 0 == ~cond; {588#false} is VALID [2022-04-27 12:52:42,360 INFO L290 TraceCheckUtils]: 31: Hoare triple {588#false} ~cond := #in~cond; {588#false} is VALID [2022-04-27 12:52:42,360 INFO L272 TraceCheckUtils]: 30: Hoare triple {588#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {588#false} is VALID [2022-04-27 12:52:42,372 INFO L290 TraceCheckUtils]: 29: Hoare triple {643#(<= 1 main_~b~0)} assume !(0 != ~b~0); {588#false} is VALID [2022-04-27 12:52:42,372 INFO L290 TraceCheckUtils]: 28: Hoare triple {643#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,372 INFO L290 TraceCheckUtils]: 27: Hoare triple {643#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,373 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {587#true} {643#(<= 1 main_~b~0)} #84#return; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,373 INFO L290 TraceCheckUtils]: 25: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,373 INFO L290 TraceCheckUtils]: 24: Hoare triple {587#true} assume !(0 == ~cond); {587#true} is VALID [2022-04-27 12:52:42,373 INFO L290 TraceCheckUtils]: 23: Hoare triple {587#true} ~cond := #in~cond; {587#true} is VALID [2022-04-27 12:52:42,373 INFO L272 TraceCheckUtils]: 22: Hoare triple {643#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,374 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {587#true} {643#(<= 1 main_~b~0)} #82#return; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,374 INFO L290 TraceCheckUtils]: 20: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,374 INFO L290 TraceCheckUtils]: 19: Hoare triple {587#true} assume !(0 == ~cond); {587#true} is VALID [2022-04-27 12:52:42,374 INFO L290 TraceCheckUtils]: 18: Hoare triple {587#true} ~cond := #in~cond; {587#true} is VALID [2022-04-27 12:52:42,374 INFO L272 TraceCheckUtils]: 17: Hoare triple {643#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,375 INFO L290 TraceCheckUtils]: 16: Hoare triple {639#(<= 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; {643#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:42,375 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {632#(not (= |assume_abort_if_not_#in~cond| 0))} {587#true} #80#return; {639#(<= 1 main_~y~0)} is VALID [2022-04-27 12:52:42,376 INFO L290 TraceCheckUtils]: 14: Hoare triple {632#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {632#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:42,376 INFO L290 TraceCheckUtils]: 13: Hoare triple {758#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {632#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:42,377 INFO L290 TraceCheckUtils]: 12: Hoare triple {587#true} ~cond := #in~cond; {758#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:52:42,377 INFO L272 TraceCheckUtils]: 11: Hoare triple {587#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,377 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {587#true} {587#true} #78#return; {587#true} is VALID [2022-04-27 12:52:42,377 INFO L290 TraceCheckUtils]: 9: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {587#true} assume !(0 == ~cond); {587#true} is VALID [2022-04-27 12:52:42,377 INFO L290 TraceCheckUtils]: 7: Hoare triple {587#true} ~cond := #in~cond; {587#true} is VALID [2022-04-27 12:52:42,377 INFO L272 TraceCheckUtils]: 6: Hoare triple {587#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {587#true} is VALID [2022-04-27 12:52:42,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {587#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {587#true} is VALID [2022-04-27 12:52:42,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {587#true} call #t~ret8 := main(); {587#true} is VALID [2022-04-27 12:52:42,377 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {587#true} {587#true} #98#return; {587#true} is VALID [2022-04-27 12:52:42,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {587#true} assume true; {587#true} is VALID [2022-04-27 12:52:42,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {587#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {587#true} is VALID [2022-04-27 12:52:42,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {587#true} call ULTIMATE.init(); {587#true} is VALID [2022-04-27 12:52:42,378 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-27 12:52:42,378 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:42,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [836510439] [2022-04-27 12:52:42,378 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:42,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [445691299] [2022-04-27 12:52:42,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [445691299] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:52:42,378 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:52:42,379 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-27 12:52:42,379 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1241402857] [2022-04-27 12:52:42,379 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:52:42,379 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-27 12:52:42,380 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:42,380 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:42,400 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 12:52:42,400 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 12:52:42,400 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:42,401 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 12:52:42,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-27 12:52:42,401 INFO L87 Difference]: Start difference. First operand 36 states and 47 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:42,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:42,683 INFO L93 Difference]: Finished difference Result 53 states and 71 transitions. [2022-04-27 12:52:42,683 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 12:52:42,683 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-27 12:52:42,684 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:42,684 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:42,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-04-27 12:52:42,686 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:42,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-04-27 12:52:42,688 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 71 transitions. [2022-04-27 12:52:42,742 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:42,744 INFO L225 Difference]: With dead ends: 53 [2022-04-27 12:52:42,744 INFO L226 Difference]: Without dead ends: 45 [2022-04-27 12:52:42,744 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 61 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 12:52:42,745 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 30 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 85 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:42,745 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 135 Invalid, 85 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:42,746 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-27 12:52:42,762 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 37. [2022-04-27 12:52:42,763 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:42,763 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:42,763 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:42,764 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:42,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:42,766 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-04-27 12:52:42,766 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-27 12:52:42,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:42,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:42,767 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 45 states. [2022-04-27 12:52:42,767 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 45 states. [2022-04-27 12:52:42,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:42,769 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-04-27 12:52:42,769 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-27 12:52:42,770 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:42,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:42,770 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:42,770 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:42,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:42,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-27 12:52:42,772 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 34 [2022-04-27 12:52:42,772 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:42,772 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-27 12:52:42,772 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, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:42,772 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-27 12:52:42,773 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 12:52:42,773 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:42,773 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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 12:52:42,792 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 12:52:42,989 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 12:52:42,990 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:42,990 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:42,990 INFO L85 PathProgramCache]: Analyzing trace with hash 1678606280, now seen corresponding path program 1 times [2022-04-27 12:52:42,990 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:42,990 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [579108664] [2022-04-27 12:52:42,990 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:42,990 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:43,017 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:43,017 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [378974055] [2022-04-27 12:52:43,017 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:43,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:43,018 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:43,019 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 12:52:43,020 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 12:52:43,055 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:43,057 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 12:52:43,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:43,066 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:43,258 INFO L272 TraceCheckUtils]: 0: Hoare triple {1027#true} call ULTIMATE.init(); {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {1027#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1027#true} {1027#true} #98#return; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L272 TraceCheckUtils]: 4: Hoare triple {1027#true} call #t~ret8 := main(); {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {1027#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L272 TraceCheckUtils]: 6: Hoare triple {1027#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L290 TraceCheckUtils]: 7: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L290 TraceCheckUtils]: 8: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L290 TraceCheckUtils]: 9: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1027#true} {1027#true} #78#return; {1027#true} is VALID [2022-04-27 12:52:43,259 INFO L272 TraceCheckUtils]: 11: Hoare triple {1027#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,260 INFO L290 TraceCheckUtils]: 12: Hoare triple {1027#true} ~cond := #in~cond; {1068#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:43,260 INFO L290 TraceCheckUtils]: 13: Hoare triple {1068#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1072#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:43,261 INFO L290 TraceCheckUtils]: 14: Hoare triple {1072#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1072#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:43,261 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1072#(not (= |assume_abort_if_not_#in~cond| 0))} {1027#true} #80#return; {1079#(<= 1 main_~y~0)} is VALID [2022-04-27 12:52:43,262 INFO L290 TraceCheckUtils]: 16: Hoare triple {1079#(<= 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; {1083#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:43,262 INFO L272 TraceCheckUtils]: 17: Hoare triple {1083#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,262 INFO L290 TraceCheckUtils]: 18: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,262 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1027#true} {1083#(<= 1 main_~b~0)} #82#return; {1083#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:43,262 INFO L272 TraceCheckUtils]: 22: Hoare triple {1083#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,263 INFO L290 TraceCheckUtils]: 23: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,263 INFO L290 TraceCheckUtils]: 24: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,263 INFO L290 TraceCheckUtils]: 25: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,263 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1027#true} {1083#(<= 1 main_~b~0)} #84#return; {1083#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:43,263 INFO L290 TraceCheckUtils]: 27: Hoare triple {1083#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1083#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:43,264 INFO L290 TraceCheckUtils]: 28: Hoare triple {1083#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {1083#(<= 1 main_~b~0)} is VALID [2022-04-27 12:52:43,264 INFO L290 TraceCheckUtils]: 29: Hoare triple {1083#(<= 1 main_~b~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1123#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 12:52:43,265 INFO L290 TraceCheckUtils]: 30: Hoare triple {1123#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1123#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 12:52:43,265 INFO L290 TraceCheckUtils]: 31: Hoare triple {1123#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 10);havoc #t~post7; {1123#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 12:52:43,266 INFO L272 TraceCheckUtils]: 32: Hoare triple {1123#(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)); {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:43,266 INFO L290 TraceCheckUtils]: 33: Hoare triple {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:43,266 INFO L290 TraceCheckUtils]: 34: Hoare triple {1137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1028#false} is VALID [2022-04-27 12:52:43,266 INFO L290 TraceCheckUtils]: 35: Hoare triple {1028#false} assume !false; {1028#false} is VALID [2022-04-27 12:52:43,267 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-27 12:52:43,267 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:43,444 INFO L290 TraceCheckUtils]: 35: Hoare triple {1028#false} assume !false; {1028#false} is VALID [2022-04-27 12:52:43,444 INFO L290 TraceCheckUtils]: 34: Hoare triple {1137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1028#false} is VALID [2022-04-27 12:52:43,444 INFO L290 TraceCheckUtils]: 33: Hoare triple {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:43,445 INFO L272 TraceCheckUtils]: 32: Hoare triple {1153#(= 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)); {1133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:43,445 INFO L290 TraceCheckUtils]: 31: Hoare triple {1153#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {1153#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-27 12:52:43,446 INFO L290 TraceCheckUtils]: 30: Hoare triple {1153#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1153#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-27 12:52:43,446 INFO L290 TraceCheckUtils]: 29: Hoare triple {1027#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1153#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-27 12:52:43,447 INFO L290 TraceCheckUtils]: 28: Hoare triple {1027#true} assume !!(#t~post6 < 10);havoc #t~post6; {1027#true} is VALID [2022-04-27 12:52:43,449 INFO L290 TraceCheckUtils]: 27: Hoare triple {1027#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1027#true} is VALID [2022-04-27 12:52:43,449 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1027#true} {1027#true} #84#return; {1027#true} is VALID [2022-04-27 12:52:43,449 INFO L290 TraceCheckUtils]: 25: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,449 INFO L290 TraceCheckUtils]: 24: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,449 INFO L290 TraceCheckUtils]: 23: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,450 INFO L272 TraceCheckUtils]: 22: Hoare triple {1027#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1027#true} {1027#true} #82#return; {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L290 TraceCheckUtils]: 20: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L290 TraceCheckUtils]: 19: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L290 TraceCheckUtils]: 18: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L272 TraceCheckUtils]: 17: Hoare triple {1027#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L290 TraceCheckUtils]: 16: Hoare triple {1027#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; {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1027#true} {1027#true} #80#return; {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L290 TraceCheckUtils]: 14: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,451 INFO L290 TraceCheckUtils]: 13: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,452 INFO L272 TraceCheckUtils]: 11: Hoare triple {1027#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,452 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1027#true} {1027#true} #78#return; {1027#true} is VALID [2022-04-27 12:52:43,453 INFO L290 TraceCheckUtils]: 9: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,453 INFO L290 TraceCheckUtils]: 8: Hoare triple {1027#true} assume !(0 == ~cond); {1027#true} is VALID [2022-04-27 12:52:43,453 INFO L290 TraceCheckUtils]: 7: Hoare triple {1027#true} ~cond := #in~cond; {1027#true} is VALID [2022-04-27 12:52:43,453 INFO L272 TraceCheckUtils]: 6: Hoare triple {1027#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1027#true} is VALID [2022-04-27 12:52:43,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {1027#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1027#true} is VALID [2022-04-27 12:52:43,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {1027#true} call #t~ret8 := main(); {1027#true} is VALID [2022-04-27 12:52:43,454 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1027#true} {1027#true} #98#return; {1027#true} is VALID [2022-04-27 12:52:43,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {1027#true} assume true; {1027#true} is VALID [2022-04-27 12:52:43,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {1027#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1027#true} is VALID [2022-04-27 12:52:43,454 INFO L272 TraceCheckUtils]: 0: Hoare triple {1027#true} call ULTIMATE.init(); {1027#true} is VALID [2022-04-27 12:52:43,454 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:43,454 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:43,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [579108664] [2022-04-27 12:52:43,454 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:43,454 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [378974055] [2022-04-27 12:52:43,454 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [378974055] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:52:43,454 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:52:43,454 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-27 12:52:43,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [521201238] [2022-04-27 12:52:43,455 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:43,456 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-04-27 12:52:43,456 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:43,456 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:43,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:43,472 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:43,472 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:43,473 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:43,473 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:52:43,474 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:43,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:43,694 INFO L93 Difference]: Finished difference Result 43 states and 53 transitions. [2022-04-27 12:52:43,694 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:43,694 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-04-27 12:52:43,694 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:43,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:43,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-27 12:52:43,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:43,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 50 transitions. [2022-04-27 12:52:43,699 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 50 transitions. [2022-04-27 12:52:43,730 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 12:52:43,732 INFO L225 Difference]: With dead ends: 43 [2022-04-27 12:52:43,732 INFO L226 Difference]: Without dead ends: 41 [2022-04-27 12:52:43,733 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 62 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 12:52:43,736 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 7 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 131 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 12:52:43,737 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 131 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:43,739 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-27 12:52:43,754 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-04-27 12:52:43,754 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:43,755 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 41 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:43,757 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 41 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:43,757 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 41 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:43,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:43,760 INFO L93 Difference]: Finished difference Result 41 states and 51 transitions. [2022-04-27 12:52:43,760 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 12:52:43,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:43,761 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:43,761 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 41 states. [2022-04-27 12:52:43,762 INFO L87 Difference]: Start difference. First operand has 41 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 41 states. [2022-04-27 12:52:43,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:43,766 INFO L93 Difference]: Finished difference Result 41 states and 51 transitions. [2022-04-27 12:52:43,766 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 12:52:43,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:43,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:43,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:43,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:43,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 25 states have internal predecessors, (29), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:43,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 51 transitions. [2022-04-27 12:52:43,768 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 51 transitions. Word has length 36 [2022-04-27 12:52:43,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:43,768 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 51 transitions. [2022-04-27 12:52:43,768 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 12:52:43,768 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 51 transitions. [2022-04-27 12:52:43,769 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 12:52:43,769 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:43,769 INFO L195 NwaCegarLoop]: trace histogram [4, 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] [2022-04-27 12:52:43,788 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 12:52:43,985 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 12:52:43,986 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:43,986 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:43,986 INFO L85 PathProgramCache]: Analyzing trace with hash -2124209112, now seen corresponding path program 1 times [2022-04-27 12:52:43,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:43,986 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [697647005] [2022-04-27 12:52:43,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:43,987 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:44,004 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:44,004 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [814873036] [2022-04-27 12:52:44,004 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:44,004 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:44,004 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:44,010 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 12:52:44,022 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 12:52:44,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:44,068 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 12:52:44,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:44,078 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:44,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {1460#true} call ULTIMATE.init(); {1460#true} is VALID [2022-04-27 12:52:44,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {1460#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,221 INFO L290 TraceCheckUtils]: 2: Hoare triple {1468#(<= ~counter~0 0)} assume true; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,221 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1468#(<= ~counter~0 0)} {1460#true} #98#return; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,222 INFO L272 TraceCheckUtils]: 4: Hoare triple {1468#(<= ~counter~0 0)} call #t~ret8 := main(); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,222 INFO L290 TraceCheckUtils]: 5: Hoare triple {1468#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,222 INFO L272 TraceCheckUtils]: 6: Hoare triple {1468#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,223 INFO L290 TraceCheckUtils]: 7: Hoare triple {1468#(<= ~counter~0 0)} ~cond := #in~cond; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,223 INFO L290 TraceCheckUtils]: 8: Hoare triple {1468#(<= ~counter~0 0)} assume !(0 == ~cond); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,223 INFO L290 TraceCheckUtils]: 9: Hoare triple {1468#(<= ~counter~0 0)} assume true; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,223 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1468#(<= ~counter~0 0)} {1468#(<= ~counter~0 0)} #78#return; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,224 INFO L272 TraceCheckUtils]: 11: Hoare triple {1468#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,224 INFO L290 TraceCheckUtils]: 12: Hoare triple {1468#(<= ~counter~0 0)} ~cond := #in~cond; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,224 INFO L290 TraceCheckUtils]: 13: Hoare triple {1468#(<= ~counter~0 0)} assume !(0 == ~cond); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,225 INFO L290 TraceCheckUtils]: 14: Hoare triple {1468#(<= ~counter~0 0)} assume true; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,226 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1468#(<= ~counter~0 0)} {1468#(<= ~counter~0 0)} #80#return; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,226 INFO L290 TraceCheckUtils]: 16: Hoare triple {1468#(<= ~counter~0 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; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,226 INFO L272 TraceCheckUtils]: 17: Hoare triple {1468#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,227 INFO L290 TraceCheckUtils]: 18: Hoare triple {1468#(<= ~counter~0 0)} ~cond := #in~cond; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,231 INFO L290 TraceCheckUtils]: 19: Hoare triple {1468#(<= ~counter~0 0)} assume !(0 == ~cond); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,231 INFO L290 TraceCheckUtils]: 20: Hoare triple {1468#(<= ~counter~0 0)} assume true; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,232 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1468#(<= ~counter~0 0)} {1468#(<= ~counter~0 0)} #82#return; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,233 INFO L272 TraceCheckUtils]: 22: Hoare triple {1468#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,233 INFO L290 TraceCheckUtils]: 23: Hoare triple {1468#(<= ~counter~0 0)} ~cond := #in~cond; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,234 INFO L290 TraceCheckUtils]: 24: Hoare triple {1468#(<= ~counter~0 0)} assume !(0 == ~cond); {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,234 INFO L290 TraceCheckUtils]: 25: Hoare triple {1468#(<= ~counter~0 0)} assume true; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,234 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1468#(<= ~counter~0 0)} {1468#(<= ~counter~0 0)} #84#return; {1468#(<= ~counter~0 0)} is VALID [2022-04-27 12:52:44,235 INFO L290 TraceCheckUtils]: 27: Hoare triple {1468#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1547#(<= ~counter~0 1)} is VALID [2022-04-27 12:52:44,235 INFO L290 TraceCheckUtils]: 28: Hoare triple {1547#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1547#(<= ~counter~0 1)} is VALID [2022-04-27 12:52:44,235 INFO L290 TraceCheckUtils]: 29: Hoare triple {1547#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1547#(<= ~counter~0 1)} is VALID [2022-04-27 12:52:44,236 INFO L290 TraceCheckUtils]: 30: Hoare triple {1547#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1557#(<= |main_#t~post7| 1)} is VALID [2022-04-27 12:52:44,236 INFO L290 TraceCheckUtils]: 31: Hoare triple {1557#(<= |main_#t~post7| 1)} assume !(#t~post7 < 10);havoc #t~post7; {1461#false} is VALID [2022-04-27 12:52:44,236 INFO L290 TraceCheckUtils]: 32: Hoare triple {1461#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; {1461#false} is VALID [2022-04-27 12:52:44,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {1461#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1461#false} is VALID [2022-04-27 12:52:44,236 INFO L290 TraceCheckUtils]: 34: Hoare triple {1461#false} assume !(#t~post6 < 10);havoc #t~post6; {1461#false} is VALID [2022-04-27 12:52:44,236 INFO L272 TraceCheckUtils]: 35: Hoare triple {1461#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {1461#false} is VALID [2022-04-27 12:52:44,237 INFO L290 TraceCheckUtils]: 36: Hoare triple {1461#false} ~cond := #in~cond; {1461#false} is VALID [2022-04-27 12:52:44,237 INFO L290 TraceCheckUtils]: 37: Hoare triple {1461#false} assume 0 == ~cond; {1461#false} is VALID [2022-04-27 12:52:44,237 INFO L290 TraceCheckUtils]: 38: Hoare triple {1461#false} assume !false; {1461#false} is VALID [2022-04-27 12:52:44,237 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:44,237 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:52:44,237 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:44,237 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [697647005] [2022-04-27 12:52:44,237 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:44,237 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [814873036] [2022-04-27 12:52:44,237 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [814873036] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:52:44,237 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:52:44,237 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:52:44,237 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1281861782] [2022-04-27 12:52:44,237 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:44,238 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-27 12:52:44,238 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:44,238 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:44,273 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 12:52:44,274 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:44,274 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:44,274 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:44,274 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:52:44,274 INFO L87 Difference]: Start difference. First operand 41 states and 51 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:44,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:44,356 INFO L93 Difference]: Finished difference Result 66 states and 84 transitions. [2022-04-27 12:52:44,356 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:44,356 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-27 12:52:44,356 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:44,356 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:44,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-04-27 12:52:44,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:44,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-04-27 12:52:44,359 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2022-04-27 12:52:44,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:44,396 INFO L225 Difference]: With dead ends: 66 [2022-04-27 12:52:44,396 INFO L226 Difference]: Without dead ends: 43 [2022-04-27 12:52:44,396 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:52:44,397 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 11 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 11 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:44,397 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 110 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 11 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 12:52:44,398 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-27 12:52:44,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 43. [2022-04-27 12:52:44,431 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:44,431 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 43 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:44,431 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 43 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:44,432 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 43 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:44,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:44,433 INFO L93 Difference]: Finished difference Result 43 states and 53 transitions. [2022-04-27 12:52:44,433 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 53 transitions. [2022-04-27 12:52:44,433 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:44,433 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:44,434 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 43 states. [2022-04-27 12:52:44,434 INFO L87 Difference]: Start difference. First operand has 43 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 43 states. [2022-04-27 12:52:44,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:44,435 INFO L93 Difference]: Finished difference Result 43 states and 53 transitions. [2022-04-27 12:52:44,435 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 53 transitions. [2022-04-27 12:52:44,435 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:44,435 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:44,435 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:44,435 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:44,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 26 states have (on average 1.1923076923076923) internal successors, (31), 27 states have internal predecessors, (31), 12 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-27 12:52:44,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 53 transitions. [2022-04-27 12:52:44,437 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 53 transitions. Word has length 39 [2022-04-27 12:52:44,437 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:44,437 INFO L495 AbstractCegarLoop]: Abstraction has 43 states and 53 transitions. [2022-04-27 12:52:44,437 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 12:52:44,437 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 53 transitions. [2022-04-27 12:52:44,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 12:52:44,437 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:44,437 INFO L195 NwaCegarLoop]: trace histogram [4, 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] [2022-04-27 12:52:44,469 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 12:52:44,654 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 12:52:44,654 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:44,655 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:44,655 INFO L85 PathProgramCache]: Analyzing trace with hash 1052701339, now seen corresponding path program 1 times [2022-04-27 12:52:44,655 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:44,655 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1939495744] [2022-04-27 12:52:44,655 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:44,655 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:44,678 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:44,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [557634762] [2022-04-27 12:52:44,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:44,678 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:44,678 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:44,683 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 12:52:44,711 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 12:52:44,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:44,755 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 12:52:44,762 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:44,763 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:44,963 INFO L272 TraceCheckUtils]: 0: Hoare triple {1828#true} call ULTIMATE.init(); {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {1828#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 2: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1828#true} {1828#true} #98#return; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L272 TraceCheckUtils]: 4: Hoare triple {1828#true} call #t~ret8 := main(); {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {1828#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {1828#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 9: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1828#true} {1828#true} #78#return; {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L272 TraceCheckUtils]: 11: Hoare triple {1828#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1828#true} is VALID [2022-04-27 12:52:44,964 INFO L290 TraceCheckUtils]: 12: Hoare triple {1828#true} ~cond := #in~cond; {1869#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:44,965 INFO L290 TraceCheckUtils]: 13: Hoare triple {1869#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1873#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:44,965 INFO L290 TraceCheckUtils]: 14: Hoare triple {1873#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1873#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:44,966 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1873#(not (= |assume_abort_if_not_#in~cond| 0))} {1828#true} #80#return; {1880#(<= 1 main_~y~0)} is VALID [2022-04-27 12:52:44,966 INFO L290 TraceCheckUtils]: 16: Hoare triple {1880#(<= 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; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,966 INFO L272 TraceCheckUtils]: 17: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1828#true} is VALID [2022-04-27 12:52:44,966 INFO L290 TraceCheckUtils]: 18: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:44,966 INFO L290 TraceCheckUtils]: 19: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:44,966 INFO L290 TraceCheckUtils]: 20: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:44,967 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1828#true} {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,967 INFO L272 TraceCheckUtils]: 22: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1828#true} is VALID [2022-04-27 12:52:44,967 INFO L290 TraceCheckUtils]: 23: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:44,967 INFO L290 TraceCheckUtils]: 24: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:44,967 INFO L290 TraceCheckUtils]: 25: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:44,968 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1828#true} {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,980 INFO L290 TraceCheckUtils]: 27: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,981 INFO L290 TraceCheckUtils]: 28: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,981 INFO L290 TraceCheckUtils]: 30: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,982 INFO L290 TraceCheckUtils]: 31: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,982 INFO L272 TraceCheckUtils]: 32: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~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)); {1828#true} is VALID [2022-04-27 12:52:44,982 INFO L290 TraceCheckUtils]: 33: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:44,982 INFO L290 TraceCheckUtils]: 34: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:44,982 INFO L290 TraceCheckUtils]: 35: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:44,983 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1828#true} {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:52:44,983 INFO L272 TraceCheckUtils]: 37: Hoare triple {1884#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {1948#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:44,983 INFO L290 TraceCheckUtils]: 38: Hoare triple {1948#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1952#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:44,984 INFO L290 TraceCheckUtils]: 39: Hoare triple {1952#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1829#false} is VALID [2022-04-27 12:52:44,984 INFO L290 TraceCheckUtils]: 40: Hoare triple {1829#false} assume !false; {1829#false} is VALID [2022-04-27 12:52:44,986 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 5 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-27 12:52:44,986 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:45,150 INFO L290 TraceCheckUtils]: 40: Hoare triple {1829#false} assume !false; {1829#false} is VALID [2022-04-27 12:52:45,151 INFO L290 TraceCheckUtils]: 39: Hoare triple {1952#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1829#false} is VALID [2022-04-27 12:52:45,151 INFO L290 TraceCheckUtils]: 38: Hoare triple {1948#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1952#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:45,152 INFO L272 TraceCheckUtils]: 37: Hoare triple {1968#(= 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)); {1948#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:45,153 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {1828#true} {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,153 INFO L290 TraceCheckUtils]: 35: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:45,153 INFO L290 TraceCheckUtils]: 34: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:45,153 INFO L290 TraceCheckUtils]: 33: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:45,153 INFO L272 TraceCheckUtils]: 32: Hoare triple {1968#(= 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)); {1828#true} is VALID [2022-04-27 12:52:45,153 INFO L290 TraceCheckUtils]: 31: Hoare triple {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,153 INFO L290 TraceCheckUtils]: 30: Hoare triple {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,154 INFO L290 TraceCheckUtils]: 29: Hoare triple {1968#(= 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; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,154 INFO L290 TraceCheckUtils]: 28: Hoare triple {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,155 INFO L290 TraceCheckUtils]: 27: Hoare triple {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,155 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1828#true} {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #84#return; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,155 INFO L290 TraceCheckUtils]: 25: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:45,155 INFO L290 TraceCheckUtils]: 24: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:45,155 INFO L290 TraceCheckUtils]: 23: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:45,155 INFO L272 TraceCheckUtils]: 22: Hoare triple {1968#(= 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)); {1828#true} is VALID [2022-04-27 12:52:45,156 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1828#true} {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #82#return; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,156 INFO L290 TraceCheckUtils]: 20: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:45,156 INFO L290 TraceCheckUtils]: 19: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:45,156 INFO L290 TraceCheckUtils]: 18: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:45,156 INFO L272 TraceCheckUtils]: 17: Hoare triple {1968#(= 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)); {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 16: Hoare triple {1828#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; {1968#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:52:45,157 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1828#true} {1828#true} #80#return; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 14: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 13: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 12: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L272 TraceCheckUtils]: 11: Hoare triple {1828#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1828#true} {1828#true} #78#return; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 9: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 8: Hoare triple {1828#true} assume !(0 == ~cond); {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 7: Hoare triple {1828#true} ~cond := #in~cond; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L272 TraceCheckUtils]: 6: Hoare triple {1828#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L290 TraceCheckUtils]: 5: Hoare triple {1828#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L272 TraceCheckUtils]: 4: Hoare triple {1828#true} call #t~ret8 := main(); {1828#true} is VALID [2022-04-27 12:52:45,157 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1828#true} {1828#true} #98#return; {1828#true} is VALID [2022-04-27 12:52:45,158 INFO L290 TraceCheckUtils]: 2: Hoare triple {1828#true} assume true; {1828#true} is VALID [2022-04-27 12:52:45,158 INFO L290 TraceCheckUtils]: 1: Hoare triple {1828#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1828#true} is VALID [2022-04-27 12:52:45,158 INFO L272 TraceCheckUtils]: 0: Hoare triple {1828#true} call ULTIMATE.init(); {1828#true} is VALID [2022-04-27 12:52:45,158 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-27 12:52:45,158 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:45,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1939495744] [2022-04-27 12:52:45,158 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:45,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [557634762] [2022-04-27 12:52:45,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [557634762] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:52:45,158 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:52:45,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-27 12:52:45,158 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1928709828] [2022-04-27 12:52:45,158 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:45,159 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-27 12:52:45,159 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:45,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:45,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:52:45,180 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:45,180 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:45,180 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:45,180 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:52:45,181 INFO L87 Difference]: Start difference. First operand 43 states and 53 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:45,445 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:45,446 INFO L93 Difference]: Finished difference Result 57 states and 72 transitions. [2022-04-27 12:52:45,446 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:45,446 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-27 12:52:45,446 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:45,446 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:45,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 12:52:45,447 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:45,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 12:52:45,448 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-27 12:52:45,493 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 12:52:45,494 INFO L225 Difference]: With dead ends: 57 [2022-04-27 12:52:45,495 INFO L226 Difference]: Without dead ends: 55 [2022-04-27 12:52:45,495 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 73 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:52:45,495 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 8 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:45,495 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 157 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:45,496 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-27 12:52:45,517 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 54. [2022-04-27 12:52:45,517 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:45,517 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:45,517 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:45,517 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:45,519 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:45,519 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-27 12:52:45,519 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-27 12:52:45,520 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:45,520 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:45,520 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-27 12:52:45,520 INFO L87 Difference]: Start difference. First operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 55 states. [2022-04-27 12:52:45,521 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:45,521 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-27 12:52:45,521 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 70 transitions. [2022-04-27 12:52:45,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:45,522 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:45,522 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:45,522 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:45,522 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 32 states have (on average 1.21875) internal successors, (39), 33 states have internal predecessors, (39), 16 states have call successors, (16), 6 states have call predecessors, (16), 5 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:45,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 69 transitions. [2022-04-27 12:52:45,523 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 69 transitions. Word has length 41 [2022-04-27 12:52:45,524 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:45,524 INFO L495 AbstractCegarLoop]: Abstraction has 54 states and 69 transitions. [2022-04-27 12:52:45,524 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 12:52:45,524 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 69 transitions. [2022-04-27 12:52:45,524 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-27 12:52:45,524 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:45,524 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-27 12:52:45,549 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 12:52:45,749 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 12:52:45,749 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:45,750 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:45,750 INFO L85 PathProgramCache]: Analyzing trace with hash 1531994984, now seen corresponding path program 1 times [2022-04-27 12:52:45,750 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:45,750 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [157677437] [2022-04-27 12:52:45,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:45,750 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:45,761 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:45,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [989006372] [2022-04-27 12:52:45,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:45,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:45,761 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:45,775 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:52:45,776 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 12:52:45,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:45,813 INFO L263 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-27 12:52:45,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:45,821 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:46,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {2359#true} call ULTIMATE.init(); {2359#true} is VALID [2022-04-27 12:52:46,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {2359#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2359#true} is VALID [2022-04-27 12:52:46,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,069 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2359#true} {2359#true} #98#return; {2359#true} is VALID [2022-04-27 12:52:46,069 INFO L272 TraceCheckUtils]: 4: Hoare triple {2359#true} call #t~ret8 := main(); {2359#true} is VALID [2022-04-27 12:52:46,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {2359#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2359#true} is VALID [2022-04-27 12:52:46,069 INFO L272 TraceCheckUtils]: 6: Hoare triple {2359#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,070 INFO L290 TraceCheckUtils]: 7: Hoare triple {2359#true} ~cond := #in~cond; {2385#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:46,070 INFO L290 TraceCheckUtils]: 8: Hoare triple {2385#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2389#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:46,070 INFO L290 TraceCheckUtils]: 9: Hoare triple {2389#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2389#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:46,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2389#(not (= |assume_abort_if_not_#in~cond| 0))} {2359#true} #78#return; {2396#(<= 1 main_~x~0)} is VALID [2022-04-27 12:52:46,071 INFO L272 TraceCheckUtils]: 11: Hoare triple {2396#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,071 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2359#true} {2396#(<= 1 main_~x~0)} #80#return; {2396#(<= 1 main_~x~0)} is VALID [2022-04-27 12:52:46,072 INFO L290 TraceCheckUtils]: 16: Hoare triple {2396#(<= 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; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,072 INFO L272 TraceCheckUtils]: 17: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,072 INFO L290 TraceCheckUtils]: 19: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,073 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2359#true} {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #82#return; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,073 INFO L272 TraceCheckUtils]: 22: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,073 INFO L290 TraceCheckUtils]: 25: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,073 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2359#true} {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #84#return; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,074 INFO L290 TraceCheckUtils]: 27: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,074 INFO L290 TraceCheckUtils]: 28: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,075 INFO L290 TraceCheckUtils]: 29: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,075 INFO L290 TraceCheckUtils]: 30: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,075 INFO L290 TraceCheckUtils]: 31: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,075 INFO L272 TraceCheckUtils]: 32: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,076 INFO L290 TraceCheckUtils]: 34: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,076 INFO L290 TraceCheckUtils]: 35: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,076 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2359#true} {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #86#return; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,076 INFO L272 TraceCheckUtils]: 37: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,076 INFO L290 TraceCheckUtils]: 38: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,076 INFO L290 TraceCheckUtils]: 39: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,077 INFO L290 TraceCheckUtils]: 40: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,077 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2359#true} {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 12:52:46,078 INFO L272 TraceCheckUtils]: 42: Hoare triple {2415#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2494#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:46,078 INFO L290 TraceCheckUtils]: 43: Hoare triple {2494#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2498#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:46,078 INFO L290 TraceCheckUtils]: 44: Hoare triple {2498#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2360#false} is VALID [2022-04-27 12:52:46,079 INFO L290 TraceCheckUtils]: 45: Hoare triple {2360#false} assume !false; {2360#false} is VALID [2022-04-27 12:52:46,079 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-27 12:52:46,079 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:52:46,275 INFO L290 TraceCheckUtils]: 45: Hoare triple {2360#false} assume !false; {2360#false} is VALID [2022-04-27 12:52:46,275 INFO L290 TraceCheckUtils]: 44: Hoare triple {2498#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2360#false} is VALID [2022-04-27 12:52:46,276 INFO L290 TraceCheckUtils]: 43: Hoare triple {2494#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2498#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:46,276 INFO L272 TraceCheckUtils]: 42: Hoare triple {2514#(= 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)); {2494#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:46,277 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2359#true} {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #88#return; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,277 INFO L290 TraceCheckUtils]: 40: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,277 INFO L272 TraceCheckUtils]: 37: Hoare triple {2514#(= 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)); {2359#true} is VALID [2022-04-27 12:52:46,278 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2359#true} {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #86#return; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,278 INFO L290 TraceCheckUtils]: 35: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,278 INFO L290 TraceCheckUtils]: 34: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,278 INFO L290 TraceCheckUtils]: 33: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,278 INFO L272 TraceCheckUtils]: 32: Hoare triple {2514#(= 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)); {2359#true} is VALID [2022-04-27 12:52:46,278 INFO L290 TraceCheckUtils]: 31: Hoare triple {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,279 INFO L290 TraceCheckUtils]: 30: Hoare triple {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,279 INFO L290 TraceCheckUtils]: 29: Hoare triple {2514#(= 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; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,280 INFO L290 TraceCheckUtils]: 28: Hoare triple {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,280 INFO L290 TraceCheckUtils]: 27: Hoare triple {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,280 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2359#true} {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #84#return; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,280 INFO L290 TraceCheckUtils]: 25: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L290 TraceCheckUtils]: 24: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L290 TraceCheckUtils]: 23: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L272 TraceCheckUtils]: 22: Hoare triple {2514#(= 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)); {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2359#true} {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #82#return; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L290 TraceCheckUtils]: 19: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L290 TraceCheckUtils]: 18: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,281 INFO L272 TraceCheckUtils]: 17: Hoare triple {2514#(= 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)); {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 16: Hoare triple {2359#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; {2514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:52:46,282 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2359#true} {2359#true} #80#return; {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 14: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 13: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 12: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L272 TraceCheckUtils]: 11: Hoare triple {2359#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2359#true} {2359#true} #78#return; {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 9: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 8: Hoare triple {2359#true} assume !(0 == ~cond); {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 7: Hoare triple {2359#true} ~cond := #in~cond; {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L272 TraceCheckUtils]: 6: Hoare triple {2359#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2359#true} is VALID [2022-04-27 12:52:46,282 INFO L290 TraceCheckUtils]: 5: Hoare triple {2359#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2359#true} is VALID [2022-04-27 12:52:46,283 INFO L272 TraceCheckUtils]: 4: Hoare triple {2359#true} call #t~ret8 := main(); {2359#true} is VALID [2022-04-27 12:52:46,283 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2359#true} {2359#true} #98#return; {2359#true} is VALID [2022-04-27 12:52:46,283 INFO L290 TraceCheckUtils]: 2: Hoare triple {2359#true} assume true; {2359#true} is VALID [2022-04-27 12:52:46,283 INFO L290 TraceCheckUtils]: 1: Hoare triple {2359#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2359#true} is VALID [2022-04-27 12:52:46,283 INFO L272 TraceCheckUtils]: 0: Hoare triple {2359#true} call ULTIMATE.init(); {2359#true} is VALID [2022-04-27 12:52:46,283 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 12:52:46,283 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:52:46,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [157677437] [2022-04-27 12:52:46,283 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:52:46,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [989006372] [2022-04-27 12:52:46,283 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [989006372] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 12:52:46,283 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:52:46,283 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-27 12:52:46,283 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [730049683] [2022-04-27 12:52:46,284 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:52:46,284 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 46 [2022-04-27 12:52:46,284 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:52:46,284 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:46,308 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 12:52:46,308 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:52:46,308 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:52:46,308 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:52:46,308 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:52:46,309 INFO L87 Difference]: Start difference. First operand 54 states and 69 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:46,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:46,597 INFO L93 Difference]: Finished difference Result 61 states and 75 transitions. [2022-04-27 12:52:46,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 12:52:46,597 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 46 [2022-04-27 12:52:46,597 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:52:46,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:46,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 12:52:46,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:46,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-27 12:52:46,600 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-27 12:52:46,684 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 12:52:46,685 INFO L225 Difference]: With dead ends: 61 [2022-04-27 12:52:46,686 INFO L226 Difference]: Without dead ends: 59 [2022-04-27 12:52:46,686 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:52:46,688 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 8 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:52:46,688 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 148 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:52:46,688 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-27 12:52:46,720 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 58. [2022-04-27 12:52:46,720 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:52:46,720 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 58 states, 35 states have (on average 1.2) internal successors, (42), 36 states have internal predecessors, (42), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:46,720 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 58 states, 35 states have (on average 1.2) internal successors, (42), 36 states have internal predecessors, (42), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:46,721 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 58 states, 35 states have (on average 1.2) internal successors, (42), 36 states have internal predecessors, (42), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:46,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:46,722 INFO L93 Difference]: Finished difference Result 59 states and 73 transitions. [2022-04-27 12:52:46,722 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 73 transitions. [2022-04-27 12:52:46,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:46,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:46,723 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 35 states have (on average 1.2) internal successors, (42), 36 states have internal predecessors, (42), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 59 states. [2022-04-27 12:52:46,723 INFO L87 Difference]: Start difference. First operand has 58 states, 35 states have (on average 1.2) internal successors, (42), 36 states have internal predecessors, (42), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 59 states. [2022-04-27 12:52:46,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:52:46,725 INFO L93 Difference]: Finished difference Result 59 states and 73 transitions. [2022-04-27 12:52:46,725 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 73 transitions. [2022-04-27 12:52:46,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:52:46,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:52:46,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:52:46,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:52:46,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 35 states have (on average 1.2) internal successors, (42), 36 states have internal predecessors, (42), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:52:46,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 72 transitions. [2022-04-27 12:52:46,727 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 72 transitions. Word has length 46 [2022-04-27 12:52:46,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:52:46,727 INFO L495 AbstractCegarLoop]: Abstraction has 58 states and 72 transitions. [2022-04-27 12:52:46,727 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 12:52:46,727 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 72 transitions. [2022-04-27 12:52:46,727 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 12:52:46,728 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:52:46,728 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 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] [2022-04-27 12:52:46,744 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 12:52:46,944 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 12:52:46,944 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:52:46,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:52:46,944 INFO L85 PathProgramCache]: Analyzing trace with hash -300711301, now seen corresponding path program 1 times [2022-04-27 12:52:46,945 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:52:46,945 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2033727240] [2022-04-27 12:52:46,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:46,945 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:52:46,955 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:52:46,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1090972172] [2022-04-27 12:52:46,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:52:46,955 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:52:46,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:52:46,956 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 12:52:46,957 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 12:52:46,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:46,996 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 12:52:47,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:52:47,005 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:52:50,230 INFO L272 TraceCheckUtils]: 0: Hoare triple {2938#true} call ULTIMATE.init(); {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {2938#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {2938#true} assume true; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2938#true} {2938#true} #98#return; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L272 TraceCheckUtils]: 4: Hoare triple {2938#true} call #t~ret8 := main(); {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L290 TraceCheckUtils]: 5: Hoare triple {2938#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L272 TraceCheckUtils]: 6: Hoare triple {2938#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {2938#true} ~cond := #in~cond; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L290 TraceCheckUtils]: 8: Hoare triple {2938#true} assume !(0 == ~cond); {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L290 TraceCheckUtils]: 9: Hoare triple {2938#true} assume true; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2938#true} {2938#true} #78#return; {2938#true} is VALID [2022-04-27 12:52:50,231 INFO L272 TraceCheckUtils]: 11: Hoare triple {2938#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,232 INFO L290 TraceCheckUtils]: 12: Hoare triple {2938#true} ~cond := #in~cond; {2979#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:52:50,232 INFO L290 TraceCheckUtils]: 13: Hoare triple {2979#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2983#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:50,232 INFO L290 TraceCheckUtils]: 14: Hoare triple {2983#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2983#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:52:50,232 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2983#(not (= |assume_abort_if_not_#in~cond| 0))} {2938#true} #80#return; {2990#(<= 1 main_~y~0)} is VALID [2022-04-27 12:52:50,233 INFO L290 TraceCheckUtils]: 16: Hoare triple {2990#(<= 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; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,233 INFO L272 TraceCheckUtils]: 17: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,233 INFO L290 TraceCheckUtils]: 18: Hoare triple {2938#true} ~cond := #in~cond; {2938#true} is VALID [2022-04-27 12:52:50,233 INFO L290 TraceCheckUtils]: 19: Hoare triple {2938#true} assume !(0 == ~cond); {2938#true} is VALID [2022-04-27 12:52:50,233 INFO L290 TraceCheckUtils]: 20: Hoare triple {2938#true} assume true; {2938#true} is VALID [2022-04-27 12:52:50,234 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2938#true} {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #82#return; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,234 INFO L272 TraceCheckUtils]: 22: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,234 INFO L290 TraceCheckUtils]: 23: Hoare triple {2938#true} ~cond := #in~cond; {2938#true} is VALID [2022-04-27 12:52:50,234 INFO L290 TraceCheckUtils]: 24: Hoare triple {2938#true} assume !(0 == ~cond); {2938#true} is VALID [2022-04-27 12:52:50,234 INFO L290 TraceCheckUtils]: 25: Hoare triple {2938#true} assume true; {2938#true} is VALID [2022-04-27 12:52:50,234 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2938#true} {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #84#return; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,235 INFO L290 TraceCheckUtils]: 27: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,235 INFO L290 TraceCheckUtils]: 28: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,235 INFO L290 TraceCheckUtils]: 29: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,236 INFO L290 TraceCheckUtils]: 30: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,236 INFO L290 TraceCheckUtils]: 31: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 10);havoc #t~post7; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,236 INFO L272 TraceCheckUtils]: 32: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {2938#true} ~cond := #in~cond; {2938#true} is VALID [2022-04-27 12:52:50,236 INFO L290 TraceCheckUtils]: 34: Hoare triple {2938#true} assume !(0 == ~cond); {2938#true} is VALID [2022-04-27 12:52:50,236 INFO L290 TraceCheckUtils]: 35: Hoare triple {2938#true} assume true; {2938#true} is VALID [2022-04-27 12:52:50,237 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2938#true} {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #86#return; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,237 INFO L272 TraceCheckUtils]: 37: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,237 INFO L290 TraceCheckUtils]: 38: Hoare triple {2938#true} ~cond := #in~cond; {3061#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:50,237 INFO L290 TraceCheckUtils]: 39: Hoare triple {3061#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:50,237 INFO L290 TraceCheckUtils]: 40: Hoare triple {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:50,238 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #88#return; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,238 INFO L272 TraceCheckUtils]: 42: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2938#true} is VALID [2022-04-27 12:52:50,238 INFO L290 TraceCheckUtils]: 43: Hoare triple {2938#true} ~cond := #in~cond; {3061#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:50,238 INFO L290 TraceCheckUtils]: 44: Hoare triple {3061#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:50,239 INFO L290 TraceCheckUtils]: 45: Hoare triple {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:52:50,239 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3065#(not (= |__VERIFIER_assert_#in~cond| 0))} {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} #90#return; {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 12:52:50,240 INFO L272 TraceCheckUtils]: 47: Hoare triple {2994#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {3090#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:52:50,240 INFO L290 TraceCheckUtils]: 48: Hoare triple {3090#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3094#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:52:50,240 INFO L290 TraceCheckUtils]: 49: Hoare triple {3094#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2939#false} is VALID [2022-04-27 12:52:50,240 INFO L290 TraceCheckUtils]: 50: Hoare triple {2939#false} assume !false; {2939#false} is VALID [2022-04-27 12:52:50,241 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 13 proven. 8 refuted. 0 times theorem prover too weak. 21 trivial. 0 not checked. [2022-04-27 12:52:50,241 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:53:37,367 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:53:37,368 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2033727240] [2022-04-27 12:53:37,368 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:53:37,368 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1090972172] [2022-04-27 12:53:37,368 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1090972172] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:53:37,368 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:53:37,368 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-27 12:53:37,368 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2015888730] [2022-04-27 12:53:37,368 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:53:37,369 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-27 12:53:37,369 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:53:37,369 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:37,399 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 12:53:37,399 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:53:37,399 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:53:37,400 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:53:37,400 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=106, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:53:37,400 INFO L87 Difference]: Start difference. First operand 58 states and 72 transitions. Second operand has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:38,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:38,960 INFO L93 Difference]: Finished difference Result 65 states and 78 transitions. [2022-04-27 12:53:38,960 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 12:53:38,960 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-27 12:53:38,960 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:38,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:38,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 67 transitions. [2022-04-27 12:53:38,961 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:38,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 67 transitions. [2022-04-27 12:53:38,962 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 67 transitions. [2022-04-27 12:53:39,016 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 12:53:39,017 INFO L225 Difference]: With dead ends: 65 [2022-04-27 12:53:39,017 INFO L226 Difference]: Without dead ends: 63 [2022-04-27 12:53:39,017 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 44 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-04-27 12:53:39,018 INFO L413 NwaCegarLoop]: 29 mSDtfsCounter, 32 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 213 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 153 SdHoareTripleChecker+Invalid, 222 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 213 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:39,018 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [38 Valid, 153 Invalid, 222 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 213 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 12:53:39,018 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-27 12:53:39,042 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 62. [2022-04-27 12:53:39,042 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:39,042 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 62 states, 38 states have (on average 1.1842105263157894) internal successors, (45), 39 states have internal predecessors, (45), 16 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:53:39,042 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 62 states, 38 states have (on average 1.1842105263157894) internal successors, (45), 39 states have internal predecessors, (45), 16 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:53:39,043 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 62 states, 38 states have (on average 1.1842105263157894) internal successors, (45), 39 states have internal predecessors, (45), 16 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:53:39,045 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:39,045 INFO L93 Difference]: Finished difference Result 63 states and 76 transitions. [2022-04-27 12:53:39,045 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 76 transitions. [2022-04-27 12:53:39,046 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:39,046 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:39,046 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 38 states have (on average 1.1842105263157894) internal successors, (45), 39 states have internal predecessors, (45), 16 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 63 states. [2022-04-27 12:53:39,052 INFO L87 Difference]: Start difference. First operand has 62 states, 38 states have (on average 1.1842105263157894) internal successors, (45), 39 states have internal predecessors, (45), 16 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) Second operand 63 states. [2022-04-27 12:53:39,054 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:39,054 INFO L93 Difference]: Finished difference Result 63 states and 76 transitions. [2022-04-27 12:53:39,054 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 76 transitions. [2022-04-27 12:53:39,054 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:39,055 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:39,055 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:39,055 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:39,055 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 38 states have (on average 1.1842105263157894) internal successors, (45), 39 states have internal predecessors, (45), 16 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 14 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-27 12:53:39,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 75 transitions. [2022-04-27 12:53:39,057 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 75 transitions. Word has length 51 [2022-04-27 12:53:39,058 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:39,058 INFO L495 AbstractCegarLoop]: Abstraction has 62 states and 75 transitions. [2022-04-27 12:53:39,058 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.4) internal successors, (24), 8 states have internal predecessors, (24), 2 states have call successors, (10), 2 states have call predecessors, (10), 3 states have return successors, (8), 3 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-27 12:53:39,058 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 75 transitions. [2022-04-27 12:53:39,058 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-27 12:53:39,058 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:53:39,058 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 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] [2022-04-27 12:53:39,089 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-27 12:53:39,259 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 12:53:39,259 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:53:39,259 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:53:39,259 INFO L85 PathProgramCache]: Analyzing trace with hash 35160305, now seen corresponding path program 1 times [2022-04-27 12:53:39,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:53:39,260 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1677442504] [2022-04-27 12:53:39,260 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:39,260 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:53:39,300 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:53:39,300 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1551724413] [2022-04-27 12:53:39,300 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:39,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:53:39,301 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:53:39,301 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 12:53:39,302 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 12:53:39,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:39,346 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:53:39,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:39,358 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:53:39,595 INFO L272 TraceCheckUtils]: 0: Hoare triple {3434#true} call ULTIMATE.init(); {3434#true} is VALID [2022-04-27 12:53:39,595 INFO L290 TraceCheckUtils]: 1: Hoare triple {3434#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,596 INFO L290 TraceCheckUtils]: 2: Hoare triple {3442#(<= ~counter~0 0)} assume true; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,596 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3442#(<= ~counter~0 0)} {3434#true} #98#return; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,597 INFO L272 TraceCheckUtils]: 4: Hoare triple {3442#(<= ~counter~0 0)} call #t~ret8 := main(); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,597 INFO L290 TraceCheckUtils]: 5: Hoare triple {3442#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,597 INFO L272 TraceCheckUtils]: 6: Hoare triple {3442#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,598 INFO L290 TraceCheckUtils]: 7: Hoare triple {3442#(<= ~counter~0 0)} ~cond := #in~cond; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,598 INFO L290 TraceCheckUtils]: 8: Hoare triple {3442#(<= ~counter~0 0)} assume !(0 == ~cond); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,598 INFO L290 TraceCheckUtils]: 9: Hoare triple {3442#(<= ~counter~0 0)} assume true; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,599 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3442#(<= ~counter~0 0)} {3442#(<= ~counter~0 0)} #78#return; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,599 INFO L272 TraceCheckUtils]: 11: Hoare triple {3442#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,599 INFO L290 TraceCheckUtils]: 12: Hoare triple {3442#(<= ~counter~0 0)} ~cond := #in~cond; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,599 INFO L290 TraceCheckUtils]: 13: Hoare triple {3442#(<= ~counter~0 0)} assume !(0 == ~cond); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,600 INFO L290 TraceCheckUtils]: 14: Hoare triple {3442#(<= ~counter~0 0)} assume true; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,600 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3442#(<= ~counter~0 0)} {3442#(<= ~counter~0 0)} #80#return; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,600 INFO L290 TraceCheckUtils]: 16: Hoare triple {3442#(<= ~counter~0 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; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,601 INFO L272 TraceCheckUtils]: 17: Hoare triple {3442#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,603 INFO L290 TraceCheckUtils]: 18: Hoare triple {3442#(<= ~counter~0 0)} ~cond := #in~cond; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,603 INFO L290 TraceCheckUtils]: 19: Hoare triple {3442#(<= ~counter~0 0)} assume !(0 == ~cond); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,603 INFO L290 TraceCheckUtils]: 20: Hoare triple {3442#(<= ~counter~0 0)} assume true; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,604 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3442#(<= ~counter~0 0)} {3442#(<= ~counter~0 0)} #82#return; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,604 INFO L272 TraceCheckUtils]: 22: Hoare triple {3442#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,604 INFO L290 TraceCheckUtils]: 23: Hoare triple {3442#(<= ~counter~0 0)} ~cond := #in~cond; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,605 INFO L290 TraceCheckUtils]: 24: Hoare triple {3442#(<= ~counter~0 0)} assume !(0 == ~cond); {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,605 INFO L290 TraceCheckUtils]: 25: Hoare triple {3442#(<= ~counter~0 0)} assume true; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,605 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3442#(<= ~counter~0 0)} {3442#(<= ~counter~0 0)} #84#return; {3442#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:39,606 INFO L290 TraceCheckUtils]: 27: Hoare triple {3442#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3521#(<= ~counter~0 1)} is VALID [2022-04-27 12:53:39,606 INFO L290 TraceCheckUtils]: 28: Hoare triple {3521#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {3521#(<= ~counter~0 1)} is VALID [2022-04-27 12:53:39,606 INFO L290 TraceCheckUtils]: 29: Hoare triple {3521#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3521#(<= ~counter~0 1)} is VALID [2022-04-27 12:53:39,607 INFO L290 TraceCheckUtils]: 30: Hoare triple {3521#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,607 INFO L290 TraceCheckUtils]: 31: Hoare triple {3531#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,607 INFO L272 TraceCheckUtils]: 32: Hoare triple {3531#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,608 INFO L290 TraceCheckUtils]: 33: Hoare triple {3531#(<= ~counter~0 2)} ~cond := #in~cond; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,608 INFO L290 TraceCheckUtils]: 34: Hoare triple {3531#(<= ~counter~0 2)} assume !(0 == ~cond); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,608 INFO L290 TraceCheckUtils]: 35: Hoare triple {3531#(<= ~counter~0 2)} assume true; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,609 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3531#(<= ~counter~0 2)} {3531#(<= ~counter~0 2)} #86#return; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,609 INFO L272 TraceCheckUtils]: 37: Hoare triple {3531#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,609 INFO L290 TraceCheckUtils]: 38: Hoare triple {3531#(<= ~counter~0 2)} ~cond := #in~cond; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,610 INFO L290 TraceCheckUtils]: 39: Hoare triple {3531#(<= ~counter~0 2)} assume !(0 == ~cond); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,610 INFO L290 TraceCheckUtils]: 40: Hoare triple {3531#(<= ~counter~0 2)} assume true; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,610 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3531#(<= ~counter~0 2)} {3531#(<= ~counter~0 2)} #88#return; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,611 INFO L272 TraceCheckUtils]: 42: Hoare triple {3531#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,611 INFO L290 TraceCheckUtils]: 43: Hoare triple {3531#(<= ~counter~0 2)} ~cond := #in~cond; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,612 INFO L290 TraceCheckUtils]: 44: Hoare triple {3531#(<= ~counter~0 2)} assume !(0 == ~cond); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,612 INFO L290 TraceCheckUtils]: 45: Hoare triple {3531#(<= ~counter~0 2)} assume true; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,612 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3531#(<= ~counter~0 2)} {3531#(<= ~counter~0 2)} #90#return; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,613 INFO L272 TraceCheckUtils]: 47: Hoare triple {3531#(<= ~counter~0 2)} 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)); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,613 INFO L290 TraceCheckUtils]: 48: Hoare triple {3531#(<= ~counter~0 2)} ~cond := #in~cond; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,613 INFO L290 TraceCheckUtils]: 49: Hoare triple {3531#(<= ~counter~0 2)} assume !(0 == ~cond); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,614 INFO L290 TraceCheckUtils]: 50: Hoare triple {3531#(<= ~counter~0 2)} assume true; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,614 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3531#(<= ~counter~0 2)} {3531#(<= ~counter~0 2)} #92#return; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,614 INFO L290 TraceCheckUtils]: 52: Hoare triple {3531#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,615 INFO L290 TraceCheckUtils]: 53: Hoare triple {3531#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3531#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:39,615 INFO L290 TraceCheckUtils]: 54: Hoare triple {3531#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3604#(<= |main_#t~post6| 2)} is VALID [2022-04-27 12:53:39,615 INFO L290 TraceCheckUtils]: 55: Hoare triple {3604#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {3435#false} is VALID [2022-04-27 12:53:39,615 INFO L272 TraceCheckUtils]: 56: Hoare triple {3435#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3435#false} is VALID [2022-04-27 12:53:39,616 INFO L290 TraceCheckUtils]: 57: Hoare triple {3435#false} ~cond := #in~cond; {3435#false} is VALID [2022-04-27 12:53:39,616 INFO L290 TraceCheckUtils]: 58: Hoare triple {3435#false} assume 0 == ~cond; {3435#false} is VALID [2022-04-27 12:53:39,616 INFO L290 TraceCheckUtils]: 59: Hoare triple {3435#false} assume !false; {3435#false} is VALID [2022-04-27 12:53:39,616 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-27 12:53:39,616 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:53:39,841 INFO L290 TraceCheckUtils]: 59: Hoare triple {3435#false} assume !false; {3435#false} is VALID [2022-04-27 12:53:39,842 INFO L290 TraceCheckUtils]: 58: Hoare triple {3435#false} assume 0 == ~cond; {3435#false} is VALID [2022-04-27 12:53:39,842 INFO L290 TraceCheckUtils]: 57: Hoare triple {3435#false} ~cond := #in~cond; {3435#false} is VALID [2022-04-27 12:53:39,842 INFO L272 TraceCheckUtils]: 56: Hoare triple {3435#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {3435#false} is VALID [2022-04-27 12:53:39,842 INFO L290 TraceCheckUtils]: 55: Hoare triple {3632#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {3435#false} is VALID [2022-04-27 12:53:39,842 INFO L290 TraceCheckUtils]: 54: Hoare triple {3636#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3632#(< |main_#t~post6| 10)} is VALID [2022-04-27 12:53:39,843 INFO L290 TraceCheckUtils]: 53: Hoare triple {3636#(< ~counter~0 10)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,843 INFO L290 TraceCheckUtils]: 52: Hoare triple {3636#(< ~counter~0 10)} assume !(~c~0 >= ~b~0); {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,844 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3434#true} {3636#(< ~counter~0 10)} #92#return; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,844 INFO L290 TraceCheckUtils]: 50: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,844 INFO L290 TraceCheckUtils]: 49: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,844 INFO L290 TraceCheckUtils]: 48: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,844 INFO L272 TraceCheckUtils]: 47: Hoare triple {3636#(< ~counter~0 10)} 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)); {3434#true} is VALID [2022-04-27 12:53:39,844 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3434#true} {3636#(< ~counter~0 10)} #90#return; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,844 INFO L290 TraceCheckUtils]: 45: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,844 INFO L290 TraceCheckUtils]: 44: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,844 INFO L290 TraceCheckUtils]: 43: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,845 INFO L272 TraceCheckUtils]: 42: Hoare triple {3636#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,845 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3434#true} {3636#(< ~counter~0 10)} #88#return; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,845 INFO L290 TraceCheckUtils]: 40: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,845 INFO L290 TraceCheckUtils]: 39: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,845 INFO L290 TraceCheckUtils]: 38: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,845 INFO L272 TraceCheckUtils]: 37: Hoare triple {3636#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,846 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3434#true} {3636#(< ~counter~0 10)} #86#return; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,846 INFO L290 TraceCheckUtils]: 35: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,846 INFO L290 TraceCheckUtils]: 34: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,846 INFO L290 TraceCheckUtils]: 33: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,846 INFO L272 TraceCheckUtils]: 32: Hoare triple {3636#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,846 INFO L290 TraceCheckUtils]: 31: Hoare triple {3636#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,847 INFO L290 TraceCheckUtils]: 30: Hoare triple {3709#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3636#(< ~counter~0 10)} is VALID [2022-04-27 12:53:39,847 INFO L290 TraceCheckUtils]: 29: Hoare triple {3709#(< ~counter~0 9)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3709#(< ~counter~0 9)} is VALID [2022-04-27 12:53:39,847 INFO L290 TraceCheckUtils]: 28: Hoare triple {3709#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {3709#(< ~counter~0 9)} is VALID [2022-04-27 12:53:39,849 INFO L290 TraceCheckUtils]: 27: Hoare triple {3719#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3709#(< ~counter~0 9)} is VALID [2022-04-27 12:53:39,849 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3434#true} {3719#(< ~counter~0 8)} #84#return; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,849 INFO L290 TraceCheckUtils]: 25: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,849 INFO L272 TraceCheckUtils]: 22: Hoare triple {3719#(< ~counter~0 8)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3434#true} {3719#(< ~counter~0 8)} #82#return; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 20: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 19: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 18: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L272 TraceCheckUtils]: 17: Hoare triple {3719#(< ~counter~0 8)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {3719#(< ~counter~0 8)} ~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; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,850 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3434#true} {3719#(< ~counter~0 8)} #80#return; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 13: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L290 TraceCheckUtils]: 12: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,850 INFO L272 TraceCheckUtils]: 11: Hoare triple {3719#(< ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,851 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3434#true} {3719#(< ~counter~0 8)} #78#return; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,851 INFO L290 TraceCheckUtils]: 9: Hoare triple {3434#true} assume true; {3434#true} is VALID [2022-04-27 12:53:39,851 INFO L290 TraceCheckUtils]: 8: Hoare triple {3434#true} assume !(0 == ~cond); {3434#true} is VALID [2022-04-27 12:53:39,851 INFO L290 TraceCheckUtils]: 7: Hoare triple {3434#true} ~cond := #in~cond; {3434#true} is VALID [2022-04-27 12:53:39,851 INFO L272 TraceCheckUtils]: 6: Hoare triple {3719#(< ~counter~0 8)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3434#true} is VALID [2022-04-27 12:53:39,851 INFO L290 TraceCheckUtils]: 5: Hoare triple {3719#(< ~counter~0 8)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {3719#(< ~counter~0 8)} call #t~ret8 := main(); {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3719#(< ~counter~0 8)} {3434#true} #98#return; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {3719#(< ~counter~0 8)} assume true; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,856 INFO L290 TraceCheckUtils]: 1: Hoare triple {3434#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3719#(< ~counter~0 8)} is VALID [2022-04-27 12:53:39,856 INFO L272 TraceCheckUtils]: 0: Hoare triple {3434#true} call ULTIMATE.init(); {3434#true} is VALID [2022-04-27 12:53:39,856 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-27 12:53:39,856 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:53:39,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1677442504] [2022-04-27 12:53:39,856 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:53:39,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1551724413] [2022-04-27 12:53:39,856 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1551724413] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:53:39,857 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:53:39,857 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 12:53:39,860 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1359177872] [2022-04-27 12:53:39,860 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:53:39,860 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) Word has length 60 [2022-04-27 12:53:39,861 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:53:39,862 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:39,909 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 12:53:39,909 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:53:39,909 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:53:39,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:53:39,910 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:53:39,910 INFO L87 Difference]: Start difference. First operand 62 states and 75 transitions. Second operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:40,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:40,331 INFO L93 Difference]: Finished difference Result 215 states and 254 transitions. [2022-04-27 12:53:40,331 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 12:53:40,331 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) Word has length 60 [2022-04-27 12:53:40,331 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:40,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:40,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 157 transitions. [2022-04-27 12:53:40,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:40,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 157 transitions. [2022-04-27 12:53:40,336 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 157 transitions. [2022-04-27 12:53:40,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:40,462 INFO L225 Difference]: With dead ends: 215 [2022-04-27 12:53:40,462 INFO L226 Difference]: Without dead ends: 207 [2022-04-27 12:53:40,463 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=64, Invalid=118, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:53:40,465 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 81 mSDsluCounter, 148 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 81 SdHoareTripleChecker+Valid, 209 SdHoareTripleChecker+Invalid, 114 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:40,465 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [81 Valid, 209 Invalid, 114 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 78 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:53:40,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 207 states. [2022-04-27 12:53:40,565 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 207 to 199. [2022-04-27 12:53:40,566 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:40,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 207 states. Second operand has 199 states, 126 states have (on average 1.1904761904761905) internal successors, (150), 130 states have internal predecessors, (150), 46 states have call successors, (46), 27 states have call predecessors, (46), 26 states have return successors, (41), 41 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-27 12:53:40,567 INFO L74 IsIncluded]: Start isIncluded. First operand 207 states. Second operand has 199 states, 126 states have (on average 1.1904761904761905) internal successors, (150), 130 states have internal predecessors, (150), 46 states have call successors, (46), 27 states have call predecessors, (46), 26 states have return successors, (41), 41 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-27 12:53:40,568 INFO L87 Difference]: Start difference. First operand 207 states. Second operand has 199 states, 126 states have (on average 1.1904761904761905) internal successors, (150), 130 states have internal predecessors, (150), 46 states have call successors, (46), 27 states have call predecessors, (46), 26 states have return successors, (41), 41 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-27 12:53:40,573 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:40,573 INFO L93 Difference]: Finished difference Result 207 states and 242 transitions. [2022-04-27 12:53:40,573 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 242 transitions. [2022-04-27 12:53:40,574 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:40,574 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:40,574 INFO L74 IsIncluded]: Start isIncluded. First operand has 199 states, 126 states have (on average 1.1904761904761905) internal successors, (150), 130 states have internal predecessors, (150), 46 states have call successors, (46), 27 states have call predecessors, (46), 26 states have return successors, (41), 41 states have call predecessors, (41), 41 states have call successors, (41) Second operand 207 states. [2022-04-27 12:53:40,575 INFO L87 Difference]: Start difference. First operand has 199 states, 126 states have (on average 1.1904761904761905) internal successors, (150), 130 states have internal predecessors, (150), 46 states have call successors, (46), 27 states have call predecessors, (46), 26 states have return successors, (41), 41 states have call predecessors, (41), 41 states have call successors, (41) Second operand 207 states. [2022-04-27 12:53:40,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:40,578 INFO L93 Difference]: Finished difference Result 207 states and 242 transitions. [2022-04-27 12:53:40,578 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 242 transitions. [2022-04-27 12:53:40,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:40,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:40,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:40,579 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:40,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 199 states, 126 states have (on average 1.1904761904761905) internal successors, (150), 130 states have internal predecessors, (150), 46 states have call successors, (46), 27 states have call predecessors, (46), 26 states have return successors, (41), 41 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-27 12:53:40,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 237 transitions. [2022-04-27 12:53:40,583 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 237 transitions. Word has length 60 [2022-04-27 12:53:40,583 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:40,583 INFO L495 AbstractCegarLoop]: Abstraction has 199 states and 237 transitions. [2022-04-27 12:53:40,584 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 10 states have internal predecessors, (41), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:40,584 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 237 transitions. [2022-04-27 12:53:40,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-27 12:53:40,584 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:53:40,584 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:53:40,603 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 12:53:40,795 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 12:53:40,796 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:53:40,797 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:53:40,798 INFO L85 PathProgramCache]: Analyzing trace with hash 1088000375, now seen corresponding path program 1 times [2022-04-27 12:53:40,798 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:53:40,798 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296490935] [2022-04-27 12:53:40,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:40,798 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:53:40,836 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:53:40,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1319487500] [2022-04-27 12:53:40,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:40,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:53:40,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:53:40,839 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 12:53:40,848 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 12:53:40,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:40,888 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:53:40,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:40,898 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:53:41,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {4818#true} call ULTIMATE.init(); {4818#true} is VALID [2022-04-27 12:53:41,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {4818#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4818#true} is VALID [2022-04-27 12:53:41,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,085 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4818#true} {4818#true} #98#return; {4818#true} is VALID [2022-04-27 12:53:41,085 INFO L272 TraceCheckUtils]: 4: Hoare triple {4818#true} call #t~ret8 := main(); {4818#true} is VALID [2022-04-27 12:53:41,085 INFO L290 TraceCheckUtils]: 5: Hoare triple {4818#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4818#true} is VALID [2022-04-27 12:53:41,086 INFO L272 TraceCheckUtils]: 6: Hoare triple {4818#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {4818#true} ~cond := #in~cond; {4844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:53:41,086 INFO L290 TraceCheckUtils]: 8: Hoare triple {4844#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:53:41,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {4848#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:53:41,087 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4848#(not (= |assume_abort_if_not_#in~cond| 0))} {4818#true} #78#return; {4855#(<= 1 main_~x~0)} is VALID [2022-04-27 12:53:41,087 INFO L272 TraceCheckUtils]: 11: Hoare triple {4855#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,087 INFO L290 TraceCheckUtils]: 12: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,087 INFO L290 TraceCheckUtils]: 13: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,087 INFO L290 TraceCheckUtils]: 14: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,087 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4818#true} {4855#(<= 1 main_~x~0)} #80#return; {4855#(<= 1 main_~x~0)} is VALID [2022-04-27 12:53:41,088 INFO L290 TraceCheckUtils]: 16: Hoare triple {4855#(<= 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; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,089 INFO L272 TraceCheckUtils]: 17: Hoare triple {4874#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L290 TraceCheckUtils]: 18: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L290 TraceCheckUtils]: 19: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L290 TraceCheckUtils]: 20: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4818#true} {4874#(<= 1 main_~a~0)} #82#return; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,089 INFO L272 TraceCheckUtils]: 22: Hoare triple {4874#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L290 TraceCheckUtils]: 23: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L290 TraceCheckUtils]: 24: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L290 TraceCheckUtils]: 25: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,089 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4818#true} {4874#(<= 1 main_~a~0)} #84#return; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,090 INFO L290 TraceCheckUtils]: 27: Hoare triple {4874#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,090 INFO L290 TraceCheckUtils]: 28: Hoare triple {4874#(<= 1 main_~a~0)} assume !!(#t~post6 < 10);havoc #t~post6; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,090 INFO L290 TraceCheckUtils]: 29: Hoare triple {4874#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,090 INFO L290 TraceCheckUtils]: 30: Hoare triple {4914#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 31: Hoare triple {4914#(<= 1 main_~c~0)} assume !!(#t~post7 < 10);havoc #t~post7; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,091 INFO L272 TraceCheckUtils]: 32: Hoare triple {4914#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 33: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 34: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 35: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #86#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,091 INFO L272 TraceCheckUtils]: 37: Hoare triple {4914#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 38: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 39: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,091 INFO L290 TraceCheckUtils]: 40: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #88#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,092 INFO L272 TraceCheckUtils]: 42: Hoare triple {4914#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L290 TraceCheckUtils]: 43: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L290 TraceCheckUtils]: 44: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L290 TraceCheckUtils]: 45: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #90#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,092 INFO L272 TraceCheckUtils]: 47: Hoare triple {4914#(<= 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)); {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L290 TraceCheckUtils]: 48: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L290 TraceCheckUtils]: 49: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,092 INFO L290 TraceCheckUtils]: 50: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,093 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #92#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,093 INFO L290 TraceCheckUtils]: 52: Hoare triple {4914#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,093 INFO L290 TraceCheckUtils]: 53: Hoare triple {4914#(<= 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; {4987#(<= 1 main_~b~0)} is VALID [2022-04-27 12:53:41,094 INFO L290 TraceCheckUtils]: 54: Hoare triple {4987#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4987#(<= 1 main_~b~0)} is VALID [2022-04-27 12:53:41,094 INFO L290 TraceCheckUtils]: 55: Hoare triple {4987#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {4987#(<= 1 main_~b~0)} is VALID [2022-04-27 12:53:41,094 INFO L290 TraceCheckUtils]: 56: Hoare triple {4987#(<= 1 main_~b~0)} assume !(0 != ~b~0); {4819#false} is VALID [2022-04-27 12:53:41,094 INFO L272 TraceCheckUtils]: 57: Hoare triple {4819#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {4819#false} is VALID [2022-04-27 12:53:41,094 INFO L290 TraceCheckUtils]: 58: Hoare triple {4819#false} ~cond := #in~cond; {4819#false} is VALID [2022-04-27 12:53:41,094 INFO L290 TraceCheckUtils]: 59: Hoare triple {4819#false} assume 0 == ~cond; {4819#false} is VALID [2022-04-27 12:53:41,094 INFO L290 TraceCheckUtils]: 60: Hoare triple {4819#false} assume !false; {4819#false} is VALID [2022-04-27 12:53:41,094 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-27 12:53:41,095 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:53:41,342 INFO L290 TraceCheckUtils]: 60: Hoare triple {4819#false} assume !false; {4819#false} is VALID [2022-04-27 12:53:41,342 INFO L290 TraceCheckUtils]: 59: Hoare triple {4819#false} assume 0 == ~cond; {4819#false} is VALID [2022-04-27 12:53:41,342 INFO L290 TraceCheckUtils]: 58: Hoare triple {4819#false} ~cond := #in~cond; {4819#false} is VALID [2022-04-27 12:53:41,342 INFO L272 TraceCheckUtils]: 57: Hoare triple {4819#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {4819#false} is VALID [2022-04-27 12:53:41,342 INFO L290 TraceCheckUtils]: 56: Hoare triple {4987#(<= 1 main_~b~0)} assume !(0 != ~b~0); {4819#false} is VALID [2022-04-27 12:53:41,343 INFO L290 TraceCheckUtils]: 55: Hoare triple {4987#(<= 1 main_~b~0)} assume !!(#t~post6 < 10);havoc #t~post6; {4987#(<= 1 main_~b~0)} is VALID [2022-04-27 12:53:41,343 INFO L290 TraceCheckUtils]: 54: Hoare triple {4987#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4987#(<= 1 main_~b~0)} is VALID [2022-04-27 12:53:41,343 INFO L290 TraceCheckUtils]: 53: Hoare triple {4914#(<= 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; {4987#(<= 1 main_~b~0)} is VALID [2022-04-27 12:53:41,343 INFO L290 TraceCheckUtils]: 52: Hoare triple {4914#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,344 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #92#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,344 INFO L290 TraceCheckUtils]: 50: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,344 INFO L290 TraceCheckUtils]: 49: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,344 INFO L290 TraceCheckUtils]: 48: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,344 INFO L272 TraceCheckUtils]: 47: Hoare triple {4914#(<= 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)); {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #90#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,345 INFO L290 TraceCheckUtils]: 45: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L290 TraceCheckUtils]: 44: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L290 TraceCheckUtils]: 43: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L272 TraceCheckUtils]: 42: Hoare triple {4914#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #88#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,345 INFO L290 TraceCheckUtils]: 40: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L290 TraceCheckUtils]: 39: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L290 TraceCheckUtils]: 38: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,345 INFO L272 TraceCheckUtils]: 37: Hoare triple {4914#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,346 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4818#true} {4914#(<= 1 main_~c~0)} #86#return; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,346 INFO L290 TraceCheckUtils]: 35: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,346 INFO L272 TraceCheckUtils]: 32: Hoare triple {4914#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,346 INFO L290 TraceCheckUtils]: 31: Hoare triple {4914#(<= 1 main_~c~0)} assume !!(#t~post7 < 10);havoc #t~post7; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,346 INFO L290 TraceCheckUtils]: 30: Hoare triple {4914#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,347 INFO L290 TraceCheckUtils]: 29: Hoare triple {4874#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4914#(<= 1 main_~c~0)} is VALID [2022-04-27 12:53:41,347 INFO L290 TraceCheckUtils]: 28: Hoare triple {4874#(<= 1 main_~a~0)} assume !!(#t~post6 < 10);havoc #t~post6; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,347 INFO L290 TraceCheckUtils]: 27: Hoare triple {4874#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,347 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4818#true} {4874#(<= 1 main_~a~0)} #84#return; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,348 INFO L290 TraceCheckUtils]: 25: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L290 TraceCheckUtils]: 24: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L290 TraceCheckUtils]: 23: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L272 TraceCheckUtils]: 22: Hoare triple {4874#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4818#true} {4874#(<= 1 main_~a~0)} #82#return; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,348 INFO L290 TraceCheckUtils]: 20: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L290 TraceCheckUtils]: 19: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L290 TraceCheckUtils]: 18: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,348 INFO L272 TraceCheckUtils]: 17: Hoare triple {4874#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,349 INFO L290 TraceCheckUtils]: 16: Hoare triple {4855#(<= 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; {4874#(<= 1 main_~a~0)} is VALID [2022-04-27 12:53:41,349 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4818#true} {4855#(<= 1 main_~x~0)} #80#return; {4855#(<= 1 main_~x~0)} is VALID [2022-04-27 12:53:41,349 INFO L290 TraceCheckUtils]: 14: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,349 INFO L290 TraceCheckUtils]: 13: Hoare triple {4818#true} assume !(0 == ~cond); {4818#true} is VALID [2022-04-27 12:53:41,349 INFO L290 TraceCheckUtils]: 12: Hoare triple {4818#true} ~cond := #in~cond; {4818#true} is VALID [2022-04-27 12:53:41,349 INFO L272 TraceCheckUtils]: 11: Hoare triple {4855#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,349 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4848#(not (= |assume_abort_if_not_#in~cond| 0))} {4818#true} #78#return; {4855#(<= 1 main_~x~0)} is VALID [2022-04-27 12:53:41,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {4848#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:53:41,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {5168#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {4848#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:53:41,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {4818#true} ~cond := #in~cond; {5168#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 12:53:41,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {4818#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4818#true} is VALID [2022-04-27 12:53:41,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {4818#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4818#true} is VALID [2022-04-27 12:53:41,350 INFO L272 TraceCheckUtils]: 4: Hoare triple {4818#true} call #t~ret8 := main(); {4818#true} is VALID [2022-04-27 12:53:41,350 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4818#true} {4818#true} #98#return; {4818#true} is VALID [2022-04-27 12:53:41,350 INFO L290 TraceCheckUtils]: 2: Hoare triple {4818#true} assume true; {4818#true} is VALID [2022-04-27 12:53:41,350 INFO L290 TraceCheckUtils]: 1: Hoare triple {4818#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4818#true} is VALID [2022-04-27 12:53:41,351 INFO L272 TraceCheckUtils]: 0: Hoare triple {4818#true} call ULTIMATE.init(); {4818#true} is VALID [2022-04-27 12:53:41,351 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-27 12:53:41,351 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:53:41,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [296490935] [2022-04-27 12:53:41,351 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:53:41,351 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1319487500] [2022-04-27 12:53:41,351 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1319487500] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:53:41,351 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:53:41,351 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 12:53:41,351 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1168621419] [2022-04-27 12:53:41,351 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:53:41,352 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-27 12:53:41,352 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:53:41,352 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-27 12:53:41,378 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:41,378 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:53:41,379 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:53:41,379 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:53:41,379 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 12:53:41,379 INFO L87 Difference]: Start difference. First operand 199 states and 237 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-27 12:53:42,079 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:42,080 INFO L93 Difference]: Finished difference Result 283 states and 368 transitions. [2022-04-27 12:53:42,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 12:53:42,080 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-27 12:53:42,081 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:42,081 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-27 12:53:42,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 147 transitions. [2022-04-27 12:53:42,084 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-27 12:53:42,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 147 transitions. [2022-04-27 12:53:42,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 147 transitions. [2022-04-27 12:53:42,204 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:42,211 INFO L225 Difference]: With dead ends: 283 [2022-04-27 12:53:42,211 INFO L226 Difference]: Without dead ends: 263 [2022-04-27 12:53:42,213 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-27 12:53:42,214 INFO L413 NwaCegarLoop]: 70 mSDtfsCounter, 64 mSDsluCounter, 192 mSDsCounter, 0 mSdLazyCounter, 132 mSolverCounterSat, 71 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 262 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 71 IncrementalHoareTripleChecker+Valid, 132 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:42,215 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [69 Valid, 262 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [71 Valid, 132 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:53:42,215 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 263 states. [2022-04-27 12:53:42,417 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 263 to 239. [2022-04-27 12:53:42,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:42,418 INFO L82 GeneralOperation]: Start isEquivalent. First operand 263 states. Second operand has 239 states, 153 states have (on average 1.2222222222222223) internal successors, (187), 156 states have internal predecessors, (187), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:42,419 INFO L74 IsIncluded]: Start isIncluded. First operand 263 states. Second operand has 239 states, 153 states have (on average 1.2222222222222223) internal successors, (187), 156 states have internal predecessors, (187), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:42,419 INFO L87 Difference]: Start difference. First operand 263 states. Second operand has 239 states, 153 states have (on average 1.2222222222222223) internal successors, (187), 156 states have internal predecessors, (187), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:42,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:42,430 INFO L93 Difference]: Finished difference Result 263 states and 342 transitions. [2022-04-27 12:53:42,430 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 342 transitions. [2022-04-27 12:53:42,431 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:42,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:42,431 INFO L74 IsIncluded]: Start isIncluded. First operand has 239 states, 153 states have (on average 1.2222222222222223) internal successors, (187), 156 states have internal predecessors, (187), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 263 states. [2022-04-27 12:53:42,432 INFO L87 Difference]: Start difference. First operand has 239 states, 153 states have (on average 1.2222222222222223) internal successors, (187), 156 states have internal predecessors, (187), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 263 states. [2022-04-27 12:53:42,438 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:42,438 INFO L93 Difference]: Finished difference Result 263 states and 342 transitions. [2022-04-27 12:53:42,438 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 342 transitions. [2022-04-27 12:53:42,439 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:42,439 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:42,439 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:42,439 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:42,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 239 states, 153 states have (on average 1.2222222222222223) internal successors, (187), 156 states have internal predecessors, (187), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:42,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 239 states to 239 states and 303 transitions. [2022-04-27 12:53:42,445 INFO L78 Accepts]: Start accepts. Automaton has 239 states and 303 transitions. Word has length 61 [2022-04-27 12:53:42,445 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:42,445 INFO L495 AbstractCegarLoop]: Abstraction has 239 states and 303 transitions. [2022-04-27 12:53:42,445 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-27 12:53:42,445 INFO L276 IsEmpty]: Start isEmpty. Operand 239 states and 303 transitions. [2022-04-27 12:53:42,446 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-27 12:53:42,446 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:53:42,446 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:53:42,462 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-27 12:53:42,653 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 12:53:42,653 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:53:42,654 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:53:42,654 INFO L85 PathProgramCache]: Analyzing trace with hash 428029148, now seen corresponding path program 1 times [2022-04-27 12:53:42,654 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:53:42,654 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [997217205] [2022-04-27 12:53:42,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:42,654 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:53:42,664 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:53:42,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1554565189] [2022-04-27 12:53:42,665 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:42,665 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:53:42,665 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:53:42,666 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 12:53:42,667 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 12:53:42,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:42,708 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 12:53:42,719 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:42,720 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:53:42,971 INFO L272 TraceCheckUtils]: 0: Hoare triple {6497#true} call ULTIMATE.init(); {6497#true} is VALID [2022-04-27 12:53:42,972 INFO L290 TraceCheckUtils]: 1: Hoare triple {6497#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,972 INFO L290 TraceCheckUtils]: 2: Hoare triple {6505#(<= ~counter~0 0)} assume true; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,973 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6505#(<= ~counter~0 0)} {6497#true} #98#return; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,973 INFO L272 TraceCheckUtils]: 4: Hoare triple {6505#(<= ~counter~0 0)} call #t~ret8 := main(); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,973 INFO L290 TraceCheckUtils]: 5: Hoare triple {6505#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,974 INFO L272 TraceCheckUtils]: 6: Hoare triple {6505#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,974 INFO L290 TraceCheckUtils]: 7: Hoare triple {6505#(<= ~counter~0 0)} ~cond := #in~cond; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {6505#(<= ~counter~0 0)} assume !(0 == ~cond); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {6505#(<= ~counter~0 0)} assume true; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,975 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6505#(<= ~counter~0 0)} {6505#(<= ~counter~0 0)} #78#return; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,975 INFO L272 TraceCheckUtils]: 11: Hoare triple {6505#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,976 INFO L290 TraceCheckUtils]: 12: Hoare triple {6505#(<= ~counter~0 0)} ~cond := #in~cond; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,976 INFO L290 TraceCheckUtils]: 13: Hoare triple {6505#(<= ~counter~0 0)} assume !(0 == ~cond); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,976 INFO L290 TraceCheckUtils]: 14: Hoare triple {6505#(<= ~counter~0 0)} assume true; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,976 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6505#(<= ~counter~0 0)} {6505#(<= ~counter~0 0)} #80#return; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,977 INFO L290 TraceCheckUtils]: 16: Hoare triple {6505#(<= ~counter~0 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; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,977 INFO L272 TraceCheckUtils]: 17: Hoare triple {6505#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,977 INFO L290 TraceCheckUtils]: 18: Hoare triple {6505#(<= ~counter~0 0)} ~cond := #in~cond; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,978 INFO L290 TraceCheckUtils]: 19: Hoare triple {6505#(<= ~counter~0 0)} assume !(0 == ~cond); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,978 INFO L290 TraceCheckUtils]: 20: Hoare triple {6505#(<= ~counter~0 0)} assume true; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,978 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6505#(<= ~counter~0 0)} {6505#(<= ~counter~0 0)} #82#return; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,979 INFO L272 TraceCheckUtils]: 22: Hoare triple {6505#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,979 INFO L290 TraceCheckUtils]: 23: Hoare triple {6505#(<= ~counter~0 0)} ~cond := #in~cond; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,979 INFO L290 TraceCheckUtils]: 24: Hoare triple {6505#(<= ~counter~0 0)} assume !(0 == ~cond); {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,979 INFO L290 TraceCheckUtils]: 25: Hoare triple {6505#(<= ~counter~0 0)} assume true; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,980 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6505#(<= ~counter~0 0)} {6505#(<= ~counter~0 0)} #84#return; {6505#(<= ~counter~0 0)} is VALID [2022-04-27 12:53:42,980 INFO L290 TraceCheckUtils]: 27: Hoare triple {6505#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6584#(<= ~counter~0 1)} is VALID [2022-04-27 12:53:42,981 INFO L290 TraceCheckUtils]: 28: Hoare triple {6584#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {6584#(<= ~counter~0 1)} is VALID [2022-04-27 12:53:42,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {6584#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6584#(<= ~counter~0 1)} is VALID [2022-04-27 12:53:42,981 INFO L290 TraceCheckUtils]: 30: Hoare triple {6584#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,982 INFO L290 TraceCheckUtils]: 31: Hoare triple {6594#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,982 INFO L272 TraceCheckUtils]: 32: Hoare triple {6594#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,982 INFO L290 TraceCheckUtils]: 33: Hoare triple {6594#(<= ~counter~0 2)} ~cond := #in~cond; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,983 INFO L290 TraceCheckUtils]: 34: Hoare triple {6594#(<= ~counter~0 2)} assume !(0 == ~cond); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,983 INFO L290 TraceCheckUtils]: 35: Hoare triple {6594#(<= ~counter~0 2)} assume true; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,983 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6594#(<= ~counter~0 2)} {6594#(<= ~counter~0 2)} #86#return; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,984 INFO L272 TraceCheckUtils]: 37: Hoare triple {6594#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,984 INFO L290 TraceCheckUtils]: 38: Hoare triple {6594#(<= ~counter~0 2)} ~cond := #in~cond; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,984 INFO L290 TraceCheckUtils]: 39: Hoare triple {6594#(<= ~counter~0 2)} assume !(0 == ~cond); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,985 INFO L290 TraceCheckUtils]: 40: Hoare triple {6594#(<= ~counter~0 2)} assume true; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,985 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6594#(<= ~counter~0 2)} {6594#(<= ~counter~0 2)} #88#return; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,986 INFO L272 TraceCheckUtils]: 42: Hoare triple {6594#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,986 INFO L290 TraceCheckUtils]: 43: Hoare triple {6594#(<= ~counter~0 2)} ~cond := #in~cond; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,986 INFO L290 TraceCheckUtils]: 44: Hoare triple {6594#(<= ~counter~0 2)} assume !(0 == ~cond); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,987 INFO L290 TraceCheckUtils]: 45: Hoare triple {6594#(<= ~counter~0 2)} assume true; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,987 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6594#(<= ~counter~0 2)} {6594#(<= ~counter~0 2)} #90#return; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,988 INFO L272 TraceCheckUtils]: 47: Hoare triple {6594#(<= ~counter~0 2)} 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)); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,988 INFO L290 TraceCheckUtils]: 48: Hoare triple {6594#(<= ~counter~0 2)} ~cond := #in~cond; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,988 INFO L290 TraceCheckUtils]: 49: Hoare triple {6594#(<= ~counter~0 2)} assume !(0 == ~cond); {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,989 INFO L290 TraceCheckUtils]: 50: Hoare triple {6594#(<= ~counter~0 2)} assume true; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,989 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {6594#(<= ~counter~0 2)} {6594#(<= ~counter~0 2)} #92#return; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,989 INFO L290 TraceCheckUtils]: 52: Hoare triple {6594#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {6594#(<= ~counter~0 2)} is VALID [2022-04-27 12:53:42,990 INFO L290 TraceCheckUtils]: 53: Hoare triple {6594#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6664#(<= |main_#t~post7| 2)} is VALID [2022-04-27 12:53:42,990 INFO L290 TraceCheckUtils]: 54: Hoare triple {6664#(<= |main_#t~post7| 2)} assume !(#t~post7 < 10);havoc #t~post7; {6498#false} is VALID [2022-04-27 12:53:42,990 INFO L290 TraceCheckUtils]: 55: Hoare triple {6498#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; {6498#false} is VALID [2022-04-27 12:53:42,990 INFO L290 TraceCheckUtils]: 56: Hoare triple {6498#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6498#false} is VALID [2022-04-27 12:53:42,990 INFO L290 TraceCheckUtils]: 57: Hoare triple {6498#false} assume !!(#t~post6 < 10);havoc #t~post6; {6498#false} is VALID [2022-04-27 12:53:42,990 INFO L290 TraceCheckUtils]: 58: Hoare triple {6498#false} assume !(0 != ~b~0); {6498#false} is VALID [2022-04-27 12:53:42,990 INFO L272 TraceCheckUtils]: 59: Hoare triple {6498#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {6498#false} is VALID [2022-04-27 12:53:42,991 INFO L290 TraceCheckUtils]: 60: Hoare triple {6498#false} ~cond := #in~cond; {6498#false} is VALID [2022-04-27 12:53:42,991 INFO L290 TraceCheckUtils]: 61: Hoare triple {6498#false} assume 0 == ~cond; {6498#false} is VALID [2022-04-27 12:53:42,991 INFO L290 TraceCheckUtils]: 62: Hoare triple {6498#false} assume !false; {6498#false} is VALID [2022-04-27 12:53:42,991 INFO L134 CoverageAnalysis]: Checked inductivity of 61 backedges. 11 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-27 12:53:42,991 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 62: Hoare triple {6498#false} assume !false; {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 61: Hoare triple {6498#false} assume 0 == ~cond; {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 60: Hoare triple {6498#false} ~cond := #in~cond; {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L272 TraceCheckUtils]: 59: Hoare triple {6498#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 58: Hoare triple {6498#false} assume !(0 != ~b~0); {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 57: Hoare triple {6498#false} assume !!(#t~post6 < 10);havoc #t~post6; {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 56: Hoare triple {6498#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 55: Hoare triple {6498#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; {6498#false} is VALID [2022-04-27 12:53:43,207 INFO L290 TraceCheckUtils]: 54: Hoare triple {6716#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {6498#false} is VALID [2022-04-27 12:53:43,208 INFO L290 TraceCheckUtils]: 53: Hoare triple {6720#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6716#(< |main_#t~post7| 10)} is VALID [2022-04-27 12:53:43,208 INFO L290 TraceCheckUtils]: 52: Hoare triple {6720#(< ~counter~0 10)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,208 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {6497#true} {6720#(< ~counter~0 10)} #92#return; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,209 INFO L290 TraceCheckUtils]: 50: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L290 TraceCheckUtils]: 49: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L290 TraceCheckUtils]: 48: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L272 TraceCheckUtils]: 47: Hoare triple {6720#(< ~counter~0 10)} 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)); {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6497#true} {6720#(< ~counter~0 10)} #90#return; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,209 INFO L290 TraceCheckUtils]: 45: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L290 TraceCheckUtils]: 44: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L290 TraceCheckUtils]: 43: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,209 INFO L272 TraceCheckUtils]: 42: Hoare triple {6720#(< ~counter~0 10)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,210 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6497#true} {6720#(< ~counter~0 10)} #88#return; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,210 INFO L290 TraceCheckUtils]: 40: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,210 INFO L290 TraceCheckUtils]: 39: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,210 INFO L290 TraceCheckUtils]: 38: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,210 INFO L272 TraceCheckUtils]: 37: Hoare triple {6720#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,210 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6497#true} {6720#(< ~counter~0 10)} #86#return; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,210 INFO L290 TraceCheckUtils]: 35: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,210 INFO L290 TraceCheckUtils]: 34: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,211 INFO L290 TraceCheckUtils]: 33: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,211 INFO L272 TraceCheckUtils]: 32: Hoare triple {6720#(< ~counter~0 10)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,211 INFO L290 TraceCheckUtils]: 31: Hoare triple {6720#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,211 INFO L290 TraceCheckUtils]: 30: Hoare triple {6790#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6720#(< ~counter~0 10)} is VALID [2022-04-27 12:53:43,212 INFO L290 TraceCheckUtils]: 29: Hoare triple {6790#(< ~counter~0 9)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {6790#(< ~counter~0 9)} is VALID [2022-04-27 12:53:43,212 INFO L290 TraceCheckUtils]: 28: Hoare triple {6790#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {6790#(< ~counter~0 9)} is VALID [2022-04-27 12:53:43,212 INFO L290 TraceCheckUtils]: 27: Hoare triple {6800#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6790#(< ~counter~0 9)} is VALID [2022-04-27 12:53:43,212 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {6497#true} {6800#(< ~counter~0 8)} #84#return; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,212 INFO L290 TraceCheckUtils]: 25: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L290 TraceCheckUtils]: 24: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L290 TraceCheckUtils]: 23: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L272 TraceCheckUtils]: 22: Hoare triple {6800#(< ~counter~0 8)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {6497#true} {6800#(< ~counter~0 8)} #82#return; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L290 TraceCheckUtils]: 18: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L272 TraceCheckUtils]: 17: Hoare triple {6800#(< ~counter~0 8)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,213 INFO L290 TraceCheckUtils]: 16: Hoare triple {6800#(< ~counter~0 8)} ~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; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,214 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6497#true} {6800#(< ~counter~0 8)} #80#return; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,214 INFO L290 TraceCheckUtils]: 14: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L290 TraceCheckUtils]: 13: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L290 TraceCheckUtils]: 12: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L272 TraceCheckUtils]: 11: Hoare triple {6800#(< ~counter~0 8)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6497#true} {6800#(< ~counter~0 8)} #78#return; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,214 INFO L290 TraceCheckUtils]: 9: Hoare triple {6497#true} assume true; {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L290 TraceCheckUtils]: 8: Hoare triple {6497#true} assume !(0 == ~cond); {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {6497#true} ~cond := #in~cond; {6497#true} is VALID [2022-04-27 12:53:43,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {6800#(< ~counter~0 8)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6497#true} is VALID [2022-04-27 12:53:43,215 INFO L290 TraceCheckUtils]: 5: Hoare triple {6800#(< ~counter~0 8)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,215 INFO L272 TraceCheckUtils]: 4: Hoare triple {6800#(< ~counter~0 8)} call #t~ret8 := main(); {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,215 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6800#(< ~counter~0 8)} {6497#true} #98#return; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,215 INFO L290 TraceCheckUtils]: 2: Hoare triple {6800#(< ~counter~0 8)} assume true; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {6497#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {6800#(< ~counter~0 8)} is VALID [2022-04-27 12:53:43,216 INFO L272 TraceCheckUtils]: 0: Hoare triple {6497#true} call ULTIMATE.init(); {6497#true} is VALID [2022-04-27 12:53:43,216 INFO L134 CoverageAnalysis]: Checked inductivity of 61 backedges. 11 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-27 12:53:43,216 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:53:43,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [997217205] [2022-04-27 12:53:43,216 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:53:43,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1554565189] [2022-04-27 12:53:43,216 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1554565189] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:53:43,216 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:53:43,216 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 12:53:43,216 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [253084749] [2022-04-27 12:53:43,217 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:53:43,217 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) Word has length 63 [2022-04-27 12:53:43,217 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:53:43,217 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:43,268 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:43,268 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 12:53:43,268 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:53:43,268 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 12:53:43,268 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 12:53:43,269 INFO L87 Difference]: Start difference. First operand 239 states and 303 transitions. Second operand has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:43,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:43,860 INFO L93 Difference]: Finished difference Result 348 states and 452 transitions. [2022-04-27 12:53:43,860 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 12:53:43,860 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) Word has length 63 [2022-04-27 12:53:43,860 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:43,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:43,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 167 transitions. [2022-04-27 12:53:43,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:43,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 167 transitions. [2022-04-27 12:53:43,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 167 transitions. [2022-04-27 12:53:44,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 167 edges. 167 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:44,016 INFO L225 Difference]: With dead ends: 348 [2022-04-27 12:53:44,016 INFO L226 Difference]: Without dead ends: 252 [2022-04-27 12:53:44,017 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 129 GetRequests, 117 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=63, Invalid=119, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:53:44,017 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 85 mSDsluCounter, 206 mSDsCounter, 0 mSdLazyCounter, 86 mSolverCounterSat, 60 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 266 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 60 IncrementalHoareTripleChecker+Valid, 86 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:44,017 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 266 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [60 Valid, 86 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:53:44,018 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 252 states. [2022-04-27 12:53:44,194 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 252 to 248. [2022-04-27 12:53:44,194 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:44,195 INFO L82 GeneralOperation]: Start isEquivalent. First operand 252 states. Second operand has 248 states, 162 states have (on average 1.1728395061728396) internal successors, (190), 165 states have internal predecessors, (190), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:44,196 INFO L74 IsIncluded]: Start isIncluded. First operand 252 states. Second operand has 248 states, 162 states have (on average 1.1728395061728396) internal successors, (190), 165 states have internal predecessors, (190), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:44,196 INFO L87 Difference]: Start difference. First operand 252 states. Second operand has 248 states, 162 states have (on average 1.1728395061728396) internal successors, (190), 165 states have internal predecessors, (190), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:44,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:44,201 INFO L93 Difference]: Finished difference Result 252 states and 308 transitions. [2022-04-27 12:53:44,201 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 308 transitions. [2022-04-27 12:53:44,202 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:44,202 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:44,202 INFO L74 IsIncluded]: Start isIncluded. First operand has 248 states, 162 states have (on average 1.1728395061728396) internal successors, (190), 165 states have internal predecessors, (190), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 252 states. [2022-04-27 12:53:44,202 INFO L87 Difference]: Start difference. First operand has 248 states, 162 states have (on average 1.1728395061728396) internal successors, (190), 165 states have internal predecessors, (190), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) Second operand 252 states. [2022-04-27 12:53:44,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:44,207 INFO L93 Difference]: Finished difference Result 252 states and 308 transitions. [2022-04-27 12:53:44,207 INFO L276 IsEmpty]: Start isEmpty. Operand 252 states and 308 transitions. [2022-04-27 12:53:44,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:44,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:44,208 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:44,208 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:44,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 248 states, 162 states have (on average 1.1728395061728396) internal successors, (190), 165 states have internal predecessors, (190), 60 states have call successors, (60), 26 states have call predecessors, (60), 25 states have return successors, (56), 56 states have call predecessors, (56), 56 states have call successors, (56) [2022-04-27 12:53:44,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 248 states to 248 states and 306 transitions. [2022-04-27 12:53:44,213 INFO L78 Accepts]: Start accepts. Automaton has 248 states and 306 transitions. Word has length 63 [2022-04-27 12:53:44,213 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:44,214 INFO L495 AbstractCegarLoop]: Abstraction has 248 states and 306 transitions. [2022-04-27 12:53:44,214 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.3) internal successors, (43), 10 states have internal predecessors, (43), 6 states have call successors, (20), 5 states have call predecessors, (20), 4 states have return successors, (18), 4 states have call predecessors, (18), 5 states have call successors, (18) [2022-04-27 12:53:44,214 INFO L276 IsEmpty]: Start isEmpty. Operand 248 states and 306 transitions. [2022-04-27 12:53:44,214 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-27 12:53:44,214 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:53:44,214 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:53:44,231 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-04-27 12:53:44,431 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 12:53:44,432 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:53:44,432 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:53:44,432 INFO L85 PathProgramCache]: Analyzing trace with hash 792554045, now seen corresponding path program 1 times [2022-04-27 12:53:44,432 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:53:44,432 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [857876136] [2022-04-27 12:53:44,432 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:44,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:53:44,448 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:53:44,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1368633754] [2022-04-27 12:53:44,448 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:44,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:53:44,449 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:53:44,450 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 12:53:44,451 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 12:53:44,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:44,496 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-27 12:53:44,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:44,513 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:53:46,901 INFO L272 TraceCheckUtils]: 0: Hoare triple {8263#true} call ULTIMATE.init(); {8263#true} is VALID [2022-04-27 12:53:46,901 INFO L290 TraceCheckUtils]: 1: Hoare triple {8263#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8263#true} is VALID [2022-04-27 12:53:46,901 INFO L290 TraceCheckUtils]: 2: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,901 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8263#true} {8263#true} #98#return; {8263#true} is VALID [2022-04-27 12:53:46,901 INFO L272 TraceCheckUtils]: 4: Hoare triple {8263#true} call #t~ret8 := main(); {8263#true} is VALID [2022-04-27 12:53:46,901 INFO L290 TraceCheckUtils]: 5: Hoare triple {8263#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L272 TraceCheckUtils]: 6: Hoare triple {8263#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 7: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 8: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 9: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8263#true} {8263#true} #78#return; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L272 TraceCheckUtils]: 11: Hoare triple {8263#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 12: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 13: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 14: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8263#true} {8263#true} #80#return; {8263#true} is VALID [2022-04-27 12:53:46,902 INFO L290 TraceCheckUtils]: 16: Hoare triple {8263#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; {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 12:53:46,902 INFO L272 TraceCheckUtils]: 17: Hoare triple {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L290 TraceCheckUtils]: 18: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L290 TraceCheckUtils]: 19: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L290 TraceCheckUtils]: 20: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8263#true} {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #82#return; {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 12:53:46,903 INFO L272 TraceCheckUtils]: 22: Hoare triple {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L290 TraceCheckUtils]: 23: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L290 TraceCheckUtils]: 24: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,903 INFO L290 TraceCheckUtils]: 25: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,904 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8263#true} {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #84#return; {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 12:53:46,904 INFO L290 TraceCheckUtils]: 27: Hoare triple {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 12:53:46,905 INFO L290 TraceCheckUtils]: 28: Hoare triple {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 10);havoc #t~post6; {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 12:53:46,905 INFO L290 TraceCheckUtils]: 29: Hoare triple {8316#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,905 INFO L290 TraceCheckUtils]: 30: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,906 INFO L290 TraceCheckUtils]: 31: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 10);havoc #t~post7; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,906 INFO L272 TraceCheckUtils]: 32: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:46,906 INFO L290 TraceCheckUtils]: 33: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,906 INFO L290 TraceCheckUtils]: 34: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,906 INFO L290 TraceCheckUtils]: 35: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,906 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8263#true} {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #86#return; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,906 INFO L272 TraceCheckUtils]: 37: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 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)); {8263#true} is VALID [2022-04-27 12:53:46,906 INFO L290 TraceCheckUtils]: 38: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,906 INFO L290 TraceCheckUtils]: 39: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,907 INFO L290 TraceCheckUtils]: 40: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,907 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8263#true} {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #88#return; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,907 INFO L272 TraceCheckUtils]: 42: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 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)); {8263#true} is VALID [2022-04-27 12:53:46,907 INFO L290 TraceCheckUtils]: 43: Hoare triple {8263#true} ~cond := #in~cond; {8399#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:53:46,908 INFO L290 TraceCheckUtils]: 44: Hoare triple {8399#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:53:46,908 INFO L290 TraceCheckUtils]: 45: Hoare triple {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:53:46,908 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #90#return; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,909 INFO L272 TraceCheckUtils]: 47: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 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)); {8263#true} is VALID [2022-04-27 12:53:46,909 INFO L290 TraceCheckUtils]: 48: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,909 INFO L290 TraceCheckUtils]: 49: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,909 INFO L290 TraceCheckUtils]: 50: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,909 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8263#true} {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #92#return; {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,910 INFO L290 TraceCheckUtils]: 52: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 12:53:46,910 INFO L290 TraceCheckUtils]: 53: Hoare triple {8356#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,911 INFO L290 TraceCheckUtils]: 55: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 10);havoc #t~post6; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,912 INFO L290 TraceCheckUtils]: 56: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,912 INFO L290 TraceCheckUtils]: 57: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,915 INFO L290 TraceCheckUtils]: 58: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 10);havoc #t~post7; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,915 INFO L272 TraceCheckUtils]: 59: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:46,915 INFO L290 TraceCheckUtils]: 60: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:46,915 INFO L290 TraceCheckUtils]: 61: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:46,915 INFO L290 TraceCheckUtils]: 62: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:46,915 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8263#true} {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #86#return; {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 12:53:46,916 INFO L272 TraceCheckUtils]: 64: Hoare triple {8431#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8465#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:53:46,916 INFO L290 TraceCheckUtils]: 65: Hoare triple {8465#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8469#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:53:46,917 INFO L290 TraceCheckUtils]: 66: Hoare triple {8469#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8264#false} is VALID [2022-04-27 12:53:46,917 INFO L290 TraceCheckUtils]: 67: Hoare triple {8264#false} assume !false; {8264#false} is VALID [2022-04-27 12:53:46,917 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 15 proven. 14 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 12:53:46,917 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:53:57,386 INFO L290 TraceCheckUtils]: 67: Hoare triple {8264#false} assume !false; {8264#false} is VALID [2022-04-27 12:53:57,386 INFO L290 TraceCheckUtils]: 66: Hoare triple {8469#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8264#false} is VALID [2022-04-27 12:53:57,387 INFO L290 TraceCheckUtils]: 65: Hoare triple {8465#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8469#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:53:57,387 INFO L272 TraceCheckUtils]: 64: Hoare triple {8485#(= 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)); {8465#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:53:57,388 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {8263#true} {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,388 INFO L290 TraceCheckUtils]: 62: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,388 INFO L290 TraceCheckUtils]: 61: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,388 INFO L290 TraceCheckUtils]: 60: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,388 INFO L272 TraceCheckUtils]: 59: Hoare triple {8485#(= 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)); {8263#true} is VALID [2022-04-27 12:53:57,389 INFO L290 TraceCheckUtils]: 58: Hoare triple {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,389 INFO L290 TraceCheckUtils]: 57: Hoare triple {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,390 INFO L290 TraceCheckUtils]: 56: Hoare triple {8485#(= 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; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,390 INFO L290 TraceCheckUtils]: 55: Hoare triple {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,390 INFO L290 TraceCheckUtils]: 54: Hoare triple {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,390 INFO L290 TraceCheckUtils]: 53: Hoare triple {8519#(= 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; {8485#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 12:53:57,391 INFO L290 TraceCheckUtils]: 52: Hoare triple {8519#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {8519#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:53:57,391 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8263#true} {8519#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {8519#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:53:57,391 INFO L290 TraceCheckUtils]: 50: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,391 INFO L290 TraceCheckUtils]: 49: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,391 INFO L290 TraceCheckUtils]: 48: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,391 INFO L272 TraceCheckUtils]: 47: Hoare triple {8519#(= 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)); {8263#true} is VALID [2022-04-27 12:53:57,392 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} {8263#true} #90#return; {8519#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:53:57,392 INFO L290 TraceCheckUtils]: 45: Hoare triple {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:53:57,392 INFO L290 TraceCheckUtils]: 44: Hoare triple {8550#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {8403#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {8263#true} ~cond := #in~cond; {8550#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:53:57,393 INFO L272 TraceCheckUtils]: 42: Hoare triple {8263#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8263#true} {8263#true} #88#return; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 40: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 39: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 38: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L272 TraceCheckUtils]: 37: Hoare triple {8263#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8263#true} {8263#true} #86#return; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 35: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 34: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 33: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L272 TraceCheckUtils]: 32: Hoare triple {8263#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 31: Hoare triple {8263#true} assume !!(#t~post7 < 10);havoc #t~post7; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 30: Hoare triple {8263#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {8263#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 28: Hoare triple {8263#true} assume !!(#t~post6 < 10);havoc #t~post6; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {8263#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8263#true} is VALID [2022-04-27 12:53:57,393 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8263#true} {8263#true} #84#return; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 24: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L272 TraceCheckUtils]: 22: Hoare triple {8263#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8263#true} {8263#true} #82#return; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 19: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 18: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L272 TraceCheckUtils]: 17: Hoare triple {8263#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 16: Hoare triple {8263#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; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8263#true} {8263#true} #80#return; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 14: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 13: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 12: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L272 TraceCheckUtils]: 11: Hoare triple {8263#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8263#true} {8263#true} #78#return; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 9: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 8: Hoare triple {8263#true} assume !(0 == ~cond); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 7: Hoare triple {8263#true} ~cond := #in~cond; {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L272 TraceCheckUtils]: 6: Hoare triple {8263#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8263#true} is VALID [2022-04-27 12:53:57,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {8263#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8263#true} is VALID [2022-04-27 12:53:57,395 INFO L272 TraceCheckUtils]: 4: Hoare triple {8263#true} call #t~ret8 := main(); {8263#true} is VALID [2022-04-27 12:53:57,395 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8263#true} {8263#true} #98#return; {8263#true} is VALID [2022-04-27 12:53:57,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {8263#true} assume true; {8263#true} is VALID [2022-04-27 12:53:57,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {8263#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8263#true} is VALID [2022-04-27 12:53:57,395 INFO L272 TraceCheckUtils]: 0: Hoare triple {8263#true} call ULTIMATE.init(); {8263#true} is VALID [2022-04-27 12:53:57,395 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 22 proven. 7 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 12:53:57,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:53:57,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [857876136] [2022-04-27 12:53:57,395 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:53:57,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1368633754] [2022-04-27 12:53:57,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1368633754] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:53:57,395 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:53:57,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-27 12:53:57,395 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [163191049] [2022-04-27 12:53:57,396 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:53:57,396 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) Word has length 68 [2022-04-27 12:53:57,400 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:53:57,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-27 12:53:57,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:57,446 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 12:53:57,447 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:53:57,447 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 12:53:57,447 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-27 12:53:57,452 INFO L87 Difference]: Start difference. First operand 248 states and 306 transitions. Second operand has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-27 12:53:58,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:58,920 INFO L93 Difference]: Finished difference Result 334 states and 433 transitions. [2022-04-27 12:53:58,920 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 12:53:58,920 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) Word has length 68 [2022-04-27 12:53:58,920 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:53:58,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-27 12:53:58,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 138 transitions. [2022-04-27 12:53:58,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-27 12:53:58,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 138 transitions. [2022-04-27 12:53:58,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 138 transitions. [2022-04-27 12:53:59,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:53:59,066 INFO L225 Difference]: With dead ends: 334 [2022-04-27 12:53:59,066 INFO L226 Difference]: Without dead ends: 328 [2022-04-27 12:53:59,067 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 27 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=65, Invalid=241, Unknown=0, NotChecked=0, Total=306 [2022-04-27 12:53:59,067 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 46 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 367 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 295 SdHoareTripleChecker+Invalid, 420 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 367 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-27 12:53:59,067 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 295 Invalid, 420 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 367 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-27 12:53:59,068 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-27 12:53:59,344 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 295. [2022-04-27 12:53:59,345 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:53:59,345 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 295 states, 195 states have (on average 1.1948717948717948) internal successors, (233), 204 states have internal predecessors, (233), 71 states have call successors, (71), 29 states have call predecessors, (71), 28 states have return successors, (66), 61 states have call predecessors, (66), 66 states have call successors, (66) [2022-04-27 12:53:59,346 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 295 states, 195 states have (on average 1.1948717948717948) internal successors, (233), 204 states have internal predecessors, (233), 71 states have call successors, (71), 29 states have call predecessors, (71), 28 states have return successors, (66), 61 states have call predecessors, (66), 66 states have call successors, (66) [2022-04-27 12:53:59,346 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 295 states, 195 states have (on average 1.1948717948717948) internal successors, (233), 204 states have internal predecessors, (233), 71 states have call successors, (71), 29 states have call predecessors, (71), 28 states have return successors, (66), 61 states have call predecessors, (66), 66 states have call successors, (66) [2022-04-27 12:53:59,353 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:59,353 INFO L93 Difference]: Finished difference Result 328 states and 421 transitions. [2022-04-27 12:53:59,353 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 421 transitions. [2022-04-27 12:53:59,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:59,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:59,354 INFO L74 IsIncluded]: Start isIncluded. First operand has 295 states, 195 states have (on average 1.1948717948717948) internal successors, (233), 204 states have internal predecessors, (233), 71 states have call successors, (71), 29 states have call predecessors, (71), 28 states have return successors, (66), 61 states have call predecessors, (66), 66 states have call successors, (66) Second operand 328 states. [2022-04-27 12:53:59,355 INFO L87 Difference]: Start difference. First operand has 295 states, 195 states have (on average 1.1948717948717948) internal successors, (233), 204 states have internal predecessors, (233), 71 states have call successors, (71), 29 states have call predecessors, (71), 28 states have return successors, (66), 61 states have call predecessors, (66), 66 states have call successors, (66) Second operand 328 states. [2022-04-27 12:53:59,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:53:59,361 INFO L93 Difference]: Finished difference Result 328 states and 421 transitions. [2022-04-27 12:53:59,361 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 421 transitions. [2022-04-27 12:53:59,362 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:53:59,362 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:53:59,362 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:53:59,362 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:53:59,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 295 states, 195 states have (on average 1.1948717948717948) internal successors, (233), 204 states have internal predecessors, (233), 71 states have call successors, (71), 29 states have call predecessors, (71), 28 states have return successors, (66), 61 states have call predecessors, (66), 66 states have call successors, (66) [2022-04-27 12:53:59,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 295 states to 295 states and 370 transitions. [2022-04-27 12:53:59,369 INFO L78 Accepts]: Start accepts. Automaton has 295 states and 370 transitions. Word has length 68 [2022-04-27 12:53:59,369 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:53:59,369 INFO L495 AbstractCegarLoop]: Abstraction has 295 states and 370 transitions. [2022-04-27 12:53:59,369 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.5833333333333335) internal successors, (43), 11 states have internal predecessors, (43), 6 states have call successors, (20), 2 states have call predecessors, (20), 2 states have return successors, (17), 6 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-27 12:53:59,369 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 370 transitions. [2022-04-27 12:53:59,370 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-27 12:53:59,370 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:53:59,370 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:53:59,387 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 12:53:59,587 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 12:53:59,587 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:53:59,588 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:53:59,588 INFO L85 PathProgramCache]: Analyzing trace with hash 783638790, now seen corresponding path program 2 times [2022-04-27 12:53:59,588 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:53:59,588 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1377883875] [2022-04-27 12:53:59,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:53:59,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:53:59,597 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:53:59,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1709427636] [2022-04-27 12:53:59,597 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 12:53:59,598 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:53:59,598 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:53:59,598 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 12:53:59,599 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 12:53:59,648 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 12:53:59,648 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:53:59,650 INFO L263 TraceCheckSpWp]: Trace formula consists of 219 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-27 12:53:59,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:53:59,662 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:54:04,179 INFO L272 TraceCheckUtils]: 0: Hoare triple {10276#true} call ULTIMATE.init(); {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 1: Hoare triple {10276#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 2: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10276#true} {10276#true} #98#return; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L272 TraceCheckUtils]: 4: Hoare triple {10276#true} call #t~ret8 := main(); {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 5: Hoare triple {10276#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L272 TraceCheckUtils]: 6: Hoare triple {10276#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 7: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10276#true} {10276#true} #78#return; {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L272 TraceCheckUtils]: 11: Hoare triple {10276#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:04,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10276#true} {10276#true} #80#return; {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L290 TraceCheckUtils]: 16: Hoare triple {10276#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; {10329#(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 12:54:04,180 INFO L272 TraceCheckUtils]: 17: Hoare triple {10329#(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)); {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L290 TraceCheckUtils]: 18: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L290 TraceCheckUtils]: 19: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,181 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10276#true} {10329#(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))} #82#return; {10329#(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 12:54:04,181 INFO L272 TraceCheckUtils]: 22: Hoare triple {10329#(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)); {10276#true} is VALID [2022-04-27 12:54:04,181 INFO L290 TraceCheckUtils]: 23: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,181 INFO L290 TraceCheckUtils]: 24: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,181 INFO L290 TraceCheckUtils]: 25: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,182 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10276#true} {10329#(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))} #84#return; {10329#(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 12:54:04,182 INFO L290 TraceCheckUtils]: 27: Hoare triple {10329#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10329#(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 12:54:04,183 INFO L290 TraceCheckUtils]: 28: Hoare triple {10329#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {10329#(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 12:54:04,183 INFO L290 TraceCheckUtils]: 29: Hoare triple {10329#(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; {10369#(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 12:54:04,183 INFO L290 TraceCheckUtils]: 30: Hoare triple {10369#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10369#(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 12:54:04,184 INFO L290 TraceCheckUtils]: 31: Hoare triple {10369#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {10369#(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 12:54:04,184 INFO L272 TraceCheckUtils]: 32: Hoare triple {10369#(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)); {10276#true} is VALID [2022-04-27 12:54:04,184 INFO L290 TraceCheckUtils]: 33: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,184 INFO L290 TraceCheckUtils]: 34: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,184 INFO L290 TraceCheckUtils]: 35: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,185 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10276#true} {10369#(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))} #86#return; {10369#(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 12:54:04,185 INFO L272 TraceCheckUtils]: 37: Hoare triple {10369#(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)); {10276#true} is VALID [2022-04-27 12:54:04,185 INFO L290 TraceCheckUtils]: 38: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,185 INFO L290 TraceCheckUtils]: 39: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,185 INFO L290 TraceCheckUtils]: 40: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,186 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10276#true} {10369#(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))} #88#return; {10369#(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 12:54:04,186 INFO L272 TraceCheckUtils]: 42: Hoare triple {10369#(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)); {10276#true} is VALID [2022-04-27 12:54:04,186 INFO L290 TraceCheckUtils]: 43: Hoare triple {10276#true} ~cond := #in~cond; {10412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:54:04,186 INFO L290 TraceCheckUtils]: 44: Hoare triple {10412#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:54:04,186 INFO L290 TraceCheckUtils]: 45: Hoare triple {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:54:04,187 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} {10369#(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))} #90#return; {10423#(and (= main_~r~0 0) (= 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 12:54:04,187 INFO L272 TraceCheckUtils]: 47: Hoare triple {10423#(and (= main_~r~0 0) (= 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)); {10276#true} is VALID [2022-04-27 12:54:04,187 INFO L290 TraceCheckUtils]: 48: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,187 INFO L290 TraceCheckUtils]: 49: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,187 INFO L290 TraceCheckUtils]: 50: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,188 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {10276#true} {10423#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {10423#(and (= main_~r~0 0) (= 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 12:54:04,188 INFO L290 TraceCheckUtils]: 52: Hoare triple {10423#(and (= main_~r~0 0) (= 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); {10423#(and (= main_~r~0 0) (= 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 12:54:04,189 INFO L290 TraceCheckUtils]: 53: Hoare triple {10423#(and (= main_~r~0 0) (= 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; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,189 INFO L290 TraceCheckUtils]: 54: Hoare triple {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,190 INFO L290 TraceCheckUtils]: 55: Hoare triple {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,190 INFO L290 TraceCheckUtils]: 56: Hoare triple {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,190 INFO L290 TraceCheckUtils]: 57: Hoare triple {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,191 INFO L290 TraceCheckUtils]: 58: Hoare triple {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,191 INFO L272 TraceCheckUtils]: 59: Hoare triple {10445#(and (= main_~s~0 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)); {10276#true} is VALID [2022-04-27 12:54:04,191 INFO L290 TraceCheckUtils]: 60: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,191 INFO L290 TraceCheckUtils]: 61: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,191 INFO L290 TraceCheckUtils]: 62: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,191 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {10276#true} {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #86#return; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,191 INFO L272 TraceCheckUtils]: 64: Hoare triple {10445#(and (= main_~s~0 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)); {10276#true} is VALID [2022-04-27 12:54:04,191 INFO L290 TraceCheckUtils]: 65: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:04,191 INFO L290 TraceCheckUtils]: 66: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:04,192 INFO L290 TraceCheckUtils]: 67: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:04,192 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10276#true} {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #88#return; {10445#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 12:54:04,193 INFO L272 TraceCheckUtils]: 69: Hoare triple {10445#(and (= main_~s~0 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)); {10494#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:54:04,193 INFO L290 TraceCheckUtils]: 70: Hoare triple {10494#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10498#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:54:04,193 INFO L290 TraceCheckUtils]: 71: Hoare triple {10498#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10277#false} is VALID [2022-04-27 12:54:04,193 INFO L290 TraceCheckUtils]: 72: Hoare triple {10277#false} assume !false; {10277#false} is VALID [2022-04-27 12:54:04,194 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 17 proven. 18 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-27 12:54:04,194 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:54:21,930 INFO L290 TraceCheckUtils]: 72: Hoare triple {10277#false} assume !false; {10277#false} is VALID [2022-04-27 12:54:21,931 INFO L290 TraceCheckUtils]: 71: Hoare triple {10498#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10277#false} is VALID [2022-04-27 12:54:21,931 INFO L290 TraceCheckUtils]: 70: Hoare triple {10494#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10498#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:54:21,932 INFO L272 TraceCheckUtils]: 69: Hoare triple {10514#(= 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)); {10494#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:54:21,932 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10276#true} {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #88#return; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:21,932 INFO L290 TraceCheckUtils]: 67: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L290 TraceCheckUtils]: 66: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L290 TraceCheckUtils]: 65: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L272 TraceCheckUtils]: 64: Hoare triple {10514#(= 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)); {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {10276#true} {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #86#return; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:21,933 INFO L290 TraceCheckUtils]: 62: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L290 TraceCheckUtils]: 61: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L290 TraceCheckUtils]: 60: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:21,933 INFO L272 TraceCheckUtils]: 59: Hoare triple {10514#(= 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)); {10276#true} is VALID [2022-04-27 12:54:21,934 INFO L290 TraceCheckUtils]: 58: Hoare triple {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:21,934 INFO L290 TraceCheckUtils]: 57: Hoare triple {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:21,934 INFO L290 TraceCheckUtils]: 56: Hoare triple {10514#(= 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; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:21,935 INFO L290 TraceCheckUtils]: 55: Hoare triple {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:21,935 INFO L290 TraceCheckUtils]: 54: Hoare triple {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:22,785 INFO L290 TraceCheckUtils]: 53: Hoare triple {10563#(= (+ (* (+ (* (* main_~k~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; {10514#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 12:54:22,785 INFO L290 TraceCheckUtils]: 52: Hoare triple {10563#(= (+ (* (+ (* (* main_~k~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); {10563#(= (+ (* (+ (* (* main_~k~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 12:54:22,786 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {10276#true} {10563#(= (+ (* (+ (* (* main_~k~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)} #92#return; {10563#(= (+ (* (+ (* (* main_~k~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 12:54:22,786 INFO L290 TraceCheckUtils]: 50: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,786 INFO L290 TraceCheckUtils]: 49: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,786 INFO L290 TraceCheckUtils]: 48: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,786 INFO L272 TraceCheckUtils]: 47: Hoare triple {10563#(= (+ (* (+ (* (* main_~k~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)); {10276#true} is VALID [2022-04-27 12:54:22,787 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #90#return; {10563#(= (+ (* (+ (* (* main_~k~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 12:54:22,787 INFO L290 TraceCheckUtils]: 45: Hoare triple {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:54:22,788 INFO L290 TraceCheckUtils]: 44: Hoare triple {10595#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10416#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:54:22,788 INFO L290 TraceCheckUtils]: 43: Hoare triple {10276#true} ~cond := #in~cond; {10595#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:54:22,788 INFO L272 TraceCheckUtils]: 42: Hoare triple {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,789 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10276#true} {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #88#return; {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,789 INFO L290 TraceCheckUtils]: 40: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,789 INFO L290 TraceCheckUtils]: 39: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,789 INFO L290 TraceCheckUtils]: 38: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,789 INFO L272 TraceCheckUtils]: 37: Hoare triple {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,790 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10276#true} {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #86#return; {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,790 INFO L290 TraceCheckUtils]: 35: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,790 INFO L290 TraceCheckUtils]: 34: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,790 INFO L290 TraceCheckUtils]: 33: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,790 INFO L272 TraceCheckUtils]: 32: Hoare triple {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,790 INFO L290 TraceCheckUtils]: 31: Hoare triple {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post7 < 10);havoc #t~post7; {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,791 INFO L290 TraceCheckUtils]: 30: Hoare triple {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,791 INFO L290 TraceCheckUtils]: 29: Hoare triple {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10585#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,791 INFO L290 TraceCheckUtils]: 28: Hoare triple {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,792 INFO L290 TraceCheckUtils]: 27: Hoare triple {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,792 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10276#true} {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #84#return; {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,793 INFO L290 TraceCheckUtils]: 25: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L290 TraceCheckUtils]: 24: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L290 TraceCheckUtils]: 23: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L272 TraceCheckUtils]: 22: Hoare triple {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10276#true} {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #82#return; {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,793 INFO L290 TraceCheckUtils]: 20: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L290 TraceCheckUtils]: 19: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L290 TraceCheckUtils]: 18: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,793 INFO L272 TraceCheckUtils]: 17: Hoare triple {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {10276#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; {10638#(or (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 12:54:22,794 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10276#true} {10276#true} #80#return; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 14: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 13: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 12: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L272 TraceCheckUtils]: 11: Hoare triple {10276#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10276#true} {10276#true} #78#return; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {10276#true} assume !(0 == ~cond); {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 7: Hoare triple {10276#true} ~cond := #in~cond; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L272 TraceCheckUtils]: 6: Hoare triple {10276#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {10276#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L272 TraceCheckUtils]: 4: Hoare triple {10276#true} call #t~ret8 := main(); {10276#true} is VALID [2022-04-27 12:54:22,794 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10276#true} {10276#true} #98#return; {10276#true} is VALID [2022-04-27 12:54:22,795 INFO L290 TraceCheckUtils]: 2: Hoare triple {10276#true} assume true; {10276#true} is VALID [2022-04-27 12:54:22,795 INFO L290 TraceCheckUtils]: 1: Hoare triple {10276#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10276#true} is VALID [2022-04-27 12:54:22,795 INFO L272 TraceCheckUtils]: 0: Hoare triple {10276#true} call ULTIMATE.init(); {10276#true} is VALID [2022-04-27 12:54:22,795 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 17 proven. 18 refuted. 0 times theorem prover too weak. 69 trivial. 0 not checked. [2022-04-27 12:54:22,795 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:54:22,795 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1377883875] [2022-04-27 12:54:22,795 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:54:22,795 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1709427636] [2022-04-27 12:54:22,795 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1709427636] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:54:22,795 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:54:22,795 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 15 [2022-04-27 12:54:22,795 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [126445657] [2022-04-27 12:54:22,796 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:54:22,796 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) Word has length 73 [2022-04-27 12:54:22,796 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:54:22,796 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 12:54:23,059 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 12:54:23,060 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 12:54:23,060 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:54:23,060 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 12:54:23,060 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=169, Unknown=0, NotChecked=0, Total=210 [2022-04-27 12:54:23,060 INFO L87 Difference]: Start difference. First operand 295 states and 370 transitions. Second operand has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 12:54:26,958 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 12:54:30,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:54:30,067 INFO L93 Difference]: Finished difference Result 319 states and 399 transitions. [2022-04-27 12:54:30,067 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 12:54:30,067 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) Word has length 73 [2022-04-27 12:54:30,067 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:54:30,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 12:54:30,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 97 transitions. [2022-04-27 12:54:30,068 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 12:54:30,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 97 transitions. [2022-04-27 12:54:30,069 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 97 transitions. [2022-04-27 12:54:32,477 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 96 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 12:54:32,482 INFO L225 Difference]: With dead ends: 319 [2022-04-27 12:54:32,483 INFO L226 Difference]: Without dead ends: 316 [2022-04-27 12:54:32,483 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 154 GetRequests, 132 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 58 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=103, Invalid=403, Unknown=0, NotChecked=0, Total=506 [2022-04-27 12:54:32,487 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 52 mSDsluCounter, 278 mSDsCounter, 0 mSdLazyCounter, 376 mSolverCounterSat, 77 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 320 SdHoareTripleChecker+Invalid, 454 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 376 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.6s IncrementalHoareTripleChecker+Time [2022-04-27 12:54:32,487 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 320 Invalid, 454 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 376 Invalid, 1 Unknown, 0 Unchecked, 3.6s Time] [2022-04-27 12:54:32,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 316 states. [2022-04-27 12:54:32,700 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 316 to 305. [2022-04-27 12:54:32,700 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:54:32,701 INFO L82 GeneralOperation]: Start isEquivalent. First operand 316 states. Second operand has 305 states, 204 states have (on average 1.1862745098039216) internal successors, (242), 212 states have internal predecessors, (242), 69 states have call successors, (69), 32 states have call predecessors, (69), 31 states have return successors, (65), 60 states have call predecessors, (65), 65 states have call successors, (65) [2022-04-27 12:54:32,701 INFO L74 IsIncluded]: Start isIncluded. First operand 316 states. Second operand has 305 states, 204 states have (on average 1.1862745098039216) internal successors, (242), 212 states have internal predecessors, (242), 69 states have call successors, (69), 32 states have call predecessors, (69), 31 states have return successors, (65), 60 states have call predecessors, (65), 65 states have call successors, (65) [2022-04-27 12:54:32,702 INFO L87 Difference]: Start difference. First operand 316 states. Second operand has 305 states, 204 states have (on average 1.1862745098039216) internal successors, (242), 212 states have internal predecessors, (242), 69 states have call successors, (69), 32 states have call predecessors, (69), 31 states have return successors, (65), 60 states have call predecessors, (65), 65 states have call successors, (65) [2022-04-27 12:54:32,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:54:32,709 INFO L93 Difference]: Finished difference Result 316 states and 393 transitions. [2022-04-27 12:54:32,709 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 393 transitions. [2022-04-27 12:54:32,709 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:54:32,710 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:54:32,710 INFO L74 IsIncluded]: Start isIncluded. First operand has 305 states, 204 states have (on average 1.1862745098039216) internal successors, (242), 212 states have internal predecessors, (242), 69 states have call successors, (69), 32 states have call predecessors, (69), 31 states have return successors, (65), 60 states have call predecessors, (65), 65 states have call successors, (65) Second operand 316 states. [2022-04-27 12:54:32,711 INFO L87 Difference]: Start difference. First operand has 305 states, 204 states have (on average 1.1862745098039216) internal successors, (242), 212 states have internal predecessors, (242), 69 states have call successors, (69), 32 states have call predecessors, (69), 31 states have return successors, (65), 60 states have call predecessors, (65), 65 states have call successors, (65) Second operand 316 states. [2022-04-27 12:54:32,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:54:32,717 INFO L93 Difference]: Finished difference Result 316 states and 393 transitions. [2022-04-27 12:54:32,717 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 393 transitions. [2022-04-27 12:54:32,718 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:54:32,718 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:54:32,718 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:54:32,718 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:54:32,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 305 states, 204 states have (on average 1.1862745098039216) internal successors, (242), 212 states have internal predecessors, (242), 69 states have call successors, (69), 32 states have call predecessors, (69), 31 states have return successors, (65), 60 states have call predecessors, (65), 65 states have call successors, (65) [2022-04-27 12:54:32,724 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 305 states to 305 states and 376 transitions. [2022-04-27 12:54:32,725 INFO L78 Accepts]: Start accepts. Automaton has 305 states and 376 transitions. Word has length 73 [2022-04-27 12:54:32,725 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:54:32,725 INFO L495 AbstractCegarLoop]: Abstraction has 305 states and 376 transitions. [2022-04-27 12:54:32,726 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 14 states have internal predecessors, (43), 9 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 9 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 12:54:32,726 INFO L276 IsEmpty]: Start isEmpty. Operand 305 states and 376 transitions. [2022-04-27 12:54:32,726 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2022-04-27 12:54:32,726 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:54:32,726 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:54:32,743 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 12:54:32,943 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 12:54:32,943 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:54:32,944 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:54:32,944 INFO L85 PathProgramCache]: Analyzing trace with hash 1625446301, now seen corresponding path program 3 times [2022-04-27 12:54:32,944 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:54:32,944 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1069089489] [2022-04-27 12:54:32,944 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:54:32,944 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:54:32,955 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:54:32,956 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1264629829] [2022-04-27 12:54:32,956 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 12:54:32,956 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:54:32,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:54:32,957 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 12:54:32,957 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 12:54:33,005 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 12:54:33,005 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:54:33,006 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 40 conjunts are in the unsatisfiable core [2022-04-27 12:54:33,017 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:54:33,018 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:54:37,092 INFO L272 TraceCheckUtils]: 0: Hoare triple {12282#true} call ULTIMATE.init(); {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {12282#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12282#true} {12282#true} #98#return; {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L272 TraceCheckUtils]: 4: Hoare triple {12282#true} call #t~ret8 := main(); {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L290 TraceCheckUtils]: 5: Hoare triple {12282#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L272 TraceCheckUtils]: 6: Hoare triple {12282#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L290 TraceCheckUtils]: 7: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L290 TraceCheckUtils]: 8: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,092 INFO L290 TraceCheckUtils]: 9: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12282#true} {12282#true} #78#return; {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L272 TraceCheckUtils]: 11: Hoare triple {12282#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L290 TraceCheckUtils]: 12: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L290 TraceCheckUtils]: 13: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L290 TraceCheckUtils]: 14: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12282#true} {12282#true} #80#return; {12282#true} is VALID [2022-04-27 12:54:37,093 INFO L290 TraceCheckUtils]: 16: Hoare triple {12282#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; {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,113 INFO L272 TraceCheckUtils]: 17: Hoare triple {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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)); {12282#true} is VALID [2022-04-27 12:54:37,114 INFO L290 TraceCheckUtils]: 18: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,114 INFO L290 TraceCheckUtils]: 19: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,114 INFO L290 TraceCheckUtils]: 20: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,115 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {12282#true} {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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))} #82#return; {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,115 INFO L272 TraceCheckUtils]: 22: Hoare triple {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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)); {12282#true} is VALID [2022-04-27 12:54:37,115 INFO L290 TraceCheckUtils]: 23: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,115 INFO L290 TraceCheckUtils]: 24: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,115 INFO L290 TraceCheckUtils]: 25: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,116 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {12282#true} {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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))} #84#return; {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,116 INFO L290 TraceCheckUtils]: 27: Hoare triple {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,117 INFO L290 TraceCheckUtils]: 28: Hoare triple {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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 !!(#t~post6 < 10);havoc #t~post6; {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,117 INFO L290 TraceCheckUtils]: 29: Hoare triple {12335#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~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; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,118 INFO L290 TraceCheckUtils]: 30: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,118 INFO L290 TraceCheckUtils]: 31: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 !!(#t~post7 < 10);havoc #t~post7; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,118 INFO L272 TraceCheckUtils]: 32: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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)); {12282#true} is VALID [2022-04-27 12:54:37,118 INFO L290 TraceCheckUtils]: 33: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,118 INFO L290 TraceCheckUtils]: 34: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,118 INFO L290 TraceCheckUtils]: 35: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,119 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12282#true} {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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))} #86#return; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,119 INFO L272 TraceCheckUtils]: 37: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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)); {12282#true} is VALID [2022-04-27 12:54:37,119 INFO L290 TraceCheckUtils]: 38: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,119 INFO L290 TraceCheckUtils]: 39: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,119 INFO L290 TraceCheckUtils]: 40: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,120 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12282#true} {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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))} #88#return; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,120 INFO L272 TraceCheckUtils]: 42: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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)); {12282#true} is VALID [2022-04-27 12:54:37,120 INFO L290 TraceCheckUtils]: 43: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,120 INFO L290 TraceCheckUtils]: 44: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,120 INFO L290 TraceCheckUtils]: 45: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,121 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12282#true} {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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))} #90#return; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,121 INFO L272 TraceCheckUtils]: 47: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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)); {12282#true} is VALID [2022-04-27 12:54:37,121 INFO L290 TraceCheckUtils]: 48: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,121 INFO L290 TraceCheckUtils]: 49: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,121 INFO L290 TraceCheckUtils]: 50: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,122 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {12282#true} {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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))} #92#return; {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,123 INFO L290 TraceCheckUtils]: 52: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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); {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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 12:54:37,123 INFO L290 TraceCheckUtils]: 53: Hoare triple {12375#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~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; {12448#(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 12:54:37,124 INFO L290 TraceCheckUtils]: 54: Hoare triple {12448#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12448#(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 12:54:37,124 INFO L290 TraceCheckUtils]: 55: Hoare triple {12448#(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 !!(#t~post6 < 10);havoc #t~post6; {12448#(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 12:54:37,124 INFO L290 TraceCheckUtils]: 56: Hoare triple {12448#(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; {12448#(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 12:54:37,125 INFO L290 TraceCheckUtils]: 57: Hoare triple {12448#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12448#(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 12:54:37,125 INFO L290 TraceCheckUtils]: 58: Hoare triple {12448#(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 !!(#t~post7 < 10);havoc #t~post7; {12448#(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 12:54:37,125 INFO L272 TraceCheckUtils]: 59: Hoare triple {12448#(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)); {12282#true} is VALID [2022-04-27 12:54:37,125 INFO L290 TraceCheckUtils]: 60: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,125 INFO L290 TraceCheckUtils]: 61: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,125 INFO L290 TraceCheckUtils]: 62: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,126 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {12282#true} {12448#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {12448#(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 12:54:37,126 INFO L272 TraceCheckUtils]: 64: Hoare triple {12448#(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)); {12282#true} is VALID [2022-04-27 12:54:37,126 INFO L290 TraceCheckUtils]: 65: Hoare triple {12282#true} ~cond := #in~cond; {12282#true} is VALID [2022-04-27 12:54:37,126 INFO L290 TraceCheckUtils]: 66: Hoare triple {12282#true} assume !(0 == ~cond); {12282#true} is VALID [2022-04-27 12:54:37,126 INFO L290 TraceCheckUtils]: 67: Hoare triple {12282#true} assume true; {12282#true} is VALID [2022-04-27 12:54:37,127 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {12282#true} {12448#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {12448#(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 12:54:37,127 INFO L272 TraceCheckUtils]: 69: Hoare triple {12448#(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)); {12282#true} is VALID [2022-04-27 12:54:37,127 INFO L290 TraceCheckUtils]: 70: Hoare triple {12282#true} ~cond := #in~cond; {12500#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:54:37,128 INFO L290 TraceCheckUtils]: 71: Hoare triple {12500#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {12504#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:54:37,128 INFO L290 TraceCheckUtils]: 72: Hoare triple {12504#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {12504#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:54:37,129 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {12504#(not (= |__VERIFIER_assert_#in~cond| 0))} {12448#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {12448#(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 12:54:37,129 INFO L272 TraceCheckUtils]: 74: Hoare triple {12448#(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)); {12514#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:54:37,130 INFO L290 TraceCheckUtils]: 75: Hoare triple {12514#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {12518#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:54:37,130 INFO L290 TraceCheckUtils]: 76: Hoare triple {12518#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {12283#false} is VALID [2022-04-27 12:54:37,130 INFO L290 TraceCheckUtils]: 77: Hoare triple {12283#false} assume !false; {12283#false} is VALID [2022-04-27 12:54:37,130 INFO L134 CoverageAnalysis]: Checked inductivity of 131 backedges. 31 proven. 10 refuted. 0 times theorem prover too weak. 90 trivial. 0 not checked. [2022-04-27 12:54:37,130 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:55:31,580 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:55:31,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1069089489] [2022-04-27 12:55:31,580 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:55:31,580 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1264629829] [2022-04-27 12:55:31,580 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1264629829] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:55:31,580 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:55:31,581 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 12:55:31,581 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1474062890] [2022-04-27 12:55:31,581 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:55:31,581 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 78 [2022-04-27 12:55:31,581 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:55:31,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-27 12:55:31,630 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:55:31,630 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 12:55:31,630 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:55:31,631 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 12:55:31,631 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 12:55:31,631 INFO L87 Difference]: Start difference. First operand 305 states and 376 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-27 12:55:32,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:55:32,632 INFO L93 Difference]: Finished difference Result 337 states and 411 transitions. [2022-04-27 12:55:32,632 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 12:55:32,632 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 78 [2022-04-27 12:55:32,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:55:32,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-27 12:55:32,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-27 12:55:32,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-27 12:55:32,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-27 12:55:32,634 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-27 12:55:32,726 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:55:32,732 INFO L225 Difference]: With dead ends: 337 [2022-04-27 12:55:32,732 INFO L226 Difference]: Without dead ends: 333 [2022-04-27 12:55:32,733 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 72 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 12:55:32,733 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 24 mSDsluCounter, 160 mSDsCounter, 0 mSdLazyCounter, 237 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 202 SdHoareTripleChecker+Invalid, 255 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 237 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-27 12:55:32,733 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 202 Invalid, 255 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 237 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-27 12:55:32,734 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 333 states. [2022-04-27 12:55:33,039 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 333 to 330. [2022-04-27 12:55:33,040 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:55:33,040 INFO L82 GeneralOperation]: Start isEquivalent. First operand 333 states. Second operand has 330 states, 221 states have (on average 1.1764705882352942) internal successors, (260), 228 states have internal predecessors, (260), 73 states have call successors, (73), 37 states have call predecessors, (73), 35 states have return successors, (69), 64 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-27 12:55:33,041 INFO L74 IsIncluded]: Start isIncluded. First operand 333 states. Second operand has 330 states, 221 states have (on average 1.1764705882352942) internal successors, (260), 228 states have internal predecessors, (260), 73 states have call successors, (73), 37 states have call predecessors, (73), 35 states have return successors, (69), 64 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-27 12:55:33,041 INFO L87 Difference]: Start difference. First operand 333 states. Second operand has 330 states, 221 states have (on average 1.1764705882352942) internal successors, (260), 228 states have internal predecessors, (260), 73 states have call successors, (73), 37 states have call predecessors, (73), 35 states have return successors, (69), 64 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-27 12:55:33,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:55:33,047 INFO L93 Difference]: Finished difference Result 333 states and 405 transitions. [2022-04-27 12:55:33,047 INFO L276 IsEmpty]: Start isEmpty. Operand 333 states and 405 transitions. [2022-04-27 12:55:33,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:55:33,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:55:33,048 INFO L74 IsIncluded]: Start isIncluded. First operand has 330 states, 221 states have (on average 1.1764705882352942) internal successors, (260), 228 states have internal predecessors, (260), 73 states have call successors, (73), 37 states have call predecessors, (73), 35 states have return successors, (69), 64 states have call predecessors, (69), 69 states have call successors, (69) Second operand 333 states. [2022-04-27 12:55:33,049 INFO L87 Difference]: Start difference. First operand has 330 states, 221 states have (on average 1.1764705882352942) internal successors, (260), 228 states have internal predecessors, (260), 73 states have call successors, (73), 37 states have call predecessors, (73), 35 states have return successors, (69), 64 states have call predecessors, (69), 69 states have call successors, (69) Second operand 333 states. [2022-04-27 12:55:33,055 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:55:33,055 INFO L93 Difference]: Finished difference Result 333 states and 405 transitions. [2022-04-27 12:55:33,055 INFO L276 IsEmpty]: Start isEmpty. Operand 333 states and 405 transitions. [2022-04-27 12:55:33,055 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:55:33,055 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:55:33,056 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:55:33,056 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:55:33,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 330 states, 221 states have (on average 1.1764705882352942) internal successors, (260), 228 states have internal predecessors, (260), 73 states have call successors, (73), 37 states have call predecessors, (73), 35 states have return successors, (69), 64 states have call predecessors, (69), 69 states have call successors, (69) [2022-04-27 12:55:33,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 330 states to 330 states and 402 transitions. [2022-04-27 12:55:33,063 INFO L78 Accepts]: Start accepts. Automaton has 330 states and 402 transitions. Word has length 78 [2022-04-27 12:55:33,063 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:55:33,063 INFO L495 AbstractCegarLoop]: Abstraction has 330 states and 402 transitions. [2022-04-27 12:55:33,063 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 8 states have internal predecessors, (28), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-27 12:55:33,063 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 402 transitions. [2022-04-27 12:55:33,064 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 85 [2022-04-27 12:55:33,064 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:55:33,064 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:55:33,081 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 12:55:33,279 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 12:55:33,280 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:55:33,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:55:33,280 INFO L85 PathProgramCache]: Analyzing trace with hash -1017110725, now seen corresponding path program 1 times [2022-04-27 12:55:33,280 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:55:33,280 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [897070850] [2022-04-27 12:55:33,280 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:55:33,280 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:55:33,296 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:55:33,296 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1741929383] [2022-04-27 12:55:33,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:55:33,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:55:33,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:55:33,300 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 12:55:33,301 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 12:55:33,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:55:33,352 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 42 conjunts are in the unsatisfiable core [2022-04-27 12:55:33,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:55:33,367 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:55:34,107 INFO L272 TraceCheckUtils]: 0: Hoare triple {14174#true} call ULTIMATE.init(); {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 1: Hoare triple {14174#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 2: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14174#true} {14174#true} #98#return; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L272 TraceCheckUtils]: 4: Hoare triple {14174#true} call #t~ret8 := main(); {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 5: Hoare triple {14174#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L272 TraceCheckUtils]: 6: Hoare triple {14174#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 7: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 8: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 9: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14174#true} {14174#true} #78#return; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L272 TraceCheckUtils]: 11: Hoare triple {14174#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 12: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 13: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L290 TraceCheckUtils]: 14: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,108 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14174#true} {14174#true} #80#return; {14174#true} is VALID [2022-04-27 12:55:34,109 INFO L290 TraceCheckUtils]: 16: Hoare triple {14174#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; {14227#(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 12:55:34,109 INFO L272 TraceCheckUtils]: 17: Hoare triple {14227#(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)); {14174#true} is VALID [2022-04-27 12:55:34,109 INFO L290 TraceCheckUtils]: 18: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,109 INFO L290 TraceCheckUtils]: 19: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,109 INFO L290 TraceCheckUtils]: 20: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,110 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14174#true} {14227#(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))} #82#return; {14227#(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 12:55:34,110 INFO L272 TraceCheckUtils]: 22: Hoare triple {14227#(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)); {14174#true} is VALID [2022-04-27 12:55:34,110 INFO L290 TraceCheckUtils]: 23: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,110 INFO L290 TraceCheckUtils]: 24: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,110 INFO L290 TraceCheckUtils]: 25: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,110 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14174#true} {14227#(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))} #84#return; {14227#(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 12:55:34,111 INFO L290 TraceCheckUtils]: 27: Hoare triple {14227#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14227#(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 12:55:34,111 INFO L290 TraceCheckUtils]: 28: Hoare triple {14227#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {14227#(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 12:55:34,112 INFO L290 TraceCheckUtils]: 29: Hoare triple {14227#(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; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,112 INFO L290 TraceCheckUtils]: 30: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,112 INFO L290 TraceCheckUtils]: 31: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,112 INFO L272 TraceCheckUtils]: 32: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,112 INFO L290 TraceCheckUtils]: 33: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,113 INFO L290 TraceCheckUtils]: 34: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,113 INFO L290 TraceCheckUtils]: 35: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,113 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14174#true} {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,113 INFO L272 TraceCheckUtils]: 37: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,113 INFO L290 TraceCheckUtils]: 39: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,113 INFO L290 TraceCheckUtils]: 40: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,114 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14174#true} {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,114 INFO L272 TraceCheckUtils]: 42: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,114 INFO L290 TraceCheckUtils]: 43: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,114 INFO L290 TraceCheckUtils]: 44: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,115 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14174#true} {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #90#return; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,115 INFO L272 TraceCheckUtils]: 47: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,115 INFO L290 TraceCheckUtils]: 48: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,115 INFO L290 TraceCheckUtils]: 49: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,115 INFO L290 TraceCheckUtils]: 50: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,116 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {14174#true} {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #92#return; {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,117 INFO L290 TraceCheckUtils]: 52: Hoare triple {14267#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,117 INFO L290 TraceCheckUtils]: 53: Hoare triple {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,117 INFO L290 TraceCheckUtils]: 54: Hoare triple {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,118 INFO L272 TraceCheckUtils]: 55: Hoare triple {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,118 INFO L290 TraceCheckUtils]: 56: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,118 INFO L290 TraceCheckUtils]: 57: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,118 INFO L290 TraceCheckUtils]: 58: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,118 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14174#true} {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,118 INFO L272 TraceCheckUtils]: 60: Hoare triple {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:55:34,119 INFO L290 TraceCheckUtils]: 61: Hoare triple {14174#true} ~cond := #in~cond; {14365#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:55:34,119 INFO L290 TraceCheckUtils]: 62: Hoare triple {14365#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:55:34,119 INFO L290 TraceCheckUtils]: 63: Hoare triple {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:55:34,120 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} {14337#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~a~0)) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,120 INFO L272 TraceCheckUtils]: 65: Hoare triple {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {14174#true} is VALID [2022-04-27 12:55:34,120 INFO L290 TraceCheckUtils]: 66: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,120 INFO L290 TraceCheckUtils]: 67: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,120 INFO L290 TraceCheckUtils]: 68: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,121 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {14174#true} {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} #90#return; {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,121 INFO L272 TraceCheckUtils]: 70: Hoare triple {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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)); {14174#true} is VALID [2022-04-27 12:55:34,121 INFO L290 TraceCheckUtils]: 71: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:55:34,121 INFO L290 TraceCheckUtils]: 72: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:55:34,121 INFO L290 TraceCheckUtils]: 73: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:55:34,122 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14174#true} {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} #92#return; {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,122 INFO L290 TraceCheckUtils]: 75: Hoare triple {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 12:55:34,123 INFO L290 TraceCheckUtils]: 76: Hoare triple {14376#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~k~0 1) (= (+ main_~c~0 main_~y~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~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; {14413#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 12:55:34,123 INFO L290 TraceCheckUtils]: 77: Hoare triple {14413#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14413#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 12:55:34,124 INFO L290 TraceCheckUtils]: 78: Hoare triple {14413#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14413#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 12:55:34,124 INFO L290 TraceCheckUtils]: 79: Hoare triple {14413#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {14423#(and (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 12:55:34,125 INFO L272 TraceCheckUtils]: 80: Hoare triple {14423#(and (= main_~q~0 1) (= (+ main_~s~0 1) 0) (= (+ (* 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)); {14427#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:55:34,125 INFO L290 TraceCheckUtils]: 81: Hoare triple {14427#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14431#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:55:34,125 INFO L290 TraceCheckUtils]: 82: Hoare triple {14431#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14175#false} is VALID [2022-04-27 12:55:34,125 INFO L290 TraceCheckUtils]: 83: Hoare triple {14175#false} assume !false; {14175#false} is VALID [2022-04-27 12:55:34,126 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 30 proven. 17 refuted. 0 times theorem prover too weak. 115 trivial. 0 not checked. [2022-04-27 12:55:34,126 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:56:23,060 INFO L290 TraceCheckUtils]: 83: Hoare triple {14175#false} assume !false; {14175#false} is VALID [2022-04-27 12:56:23,061 INFO L290 TraceCheckUtils]: 82: Hoare triple {14431#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14175#false} is VALID [2022-04-27 12:56:23,061 INFO L290 TraceCheckUtils]: 81: Hoare triple {14427#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14431#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:56:23,061 INFO L272 TraceCheckUtils]: 80: Hoare triple {14447#(= (+ (* 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)); {14427#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:56:23,062 INFO L290 TraceCheckUtils]: 79: Hoare triple {14451#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {14447#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-27 12:56:23,062 INFO L290 TraceCheckUtils]: 78: Hoare triple {14451#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14451#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 12:56:23,062 INFO L290 TraceCheckUtils]: 77: Hoare triple {14451#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14451#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 12:56:24,034 INFO L290 TraceCheckUtils]: 76: Hoare triple {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {14451#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-27 12:56:24,035 INFO L290 TraceCheckUtils]: 75: Hoare triple {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,036 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14174#true} {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #92#return; {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,036 INFO L290 TraceCheckUtils]: 73: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,036 INFO L290 TraceCheckUtils]: 72: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,036 INFO L290 TraceCheckUtils]: 71: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,036 INFO L272 TraceCheckUtils]: 70: Hoare triple {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} 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)); {14174#true} is VALID [2022-04-27 12:56:24,036 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {14174#true} {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #90#return; {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,037 INFO L290 TraceCheckUtils]: 68: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,037 INFO L290 TraceCheckUtils]: 67: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,037 INFO L290 TraceCheckUtils]: 66: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,037 INFO L272 TraceCheckUtils]: 65: Hoare triple {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,039 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #88#return; {14461#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,039 INFO L290 TraceCheckUtils]: 63: Hoare triple {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:56:24,040 INFO L290 TraceCheckUtils]: 62: Hoare triple {14508#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14369#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:56:24,040 INFO L290 TraceCheckUtils]: 61: Hoare triple {14174#true} ~cond := #in~cond; {14508#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 12:56:24,040 INFO L272 TraceCheckUtils]: 60: Hoare triple {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,040 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14174#true} {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #86#return; {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,040 INFO L290 TraceCheckUtils]: 58: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,040 INFO L290 TraceCheckUtils]: 57: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,041 INFO L290 TraceCheckUtils]: 56: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,041 INFO L272 TraceCheckUtils]: 55: Hoare triple {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,041 INFO L290 TraceCheckUtils]: 54: Hoare triple {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !!(#t~post7 < 10);havoc #t~post7; {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,041 INFO L290 TraceCheckUtils]: 53: Hoare triple {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,214 INFO L290 TraceCheckUtils]: 52: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14498#(or (not (= main_~c~0 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ (* (- 1) main_~k~0 main_~s~0) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-27 12:56:24,215 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {14174#true} {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #92#return; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,215 INFO L290 TraceCheckUtils]: 50: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,215 INFO L290 TraceCheckUtils]: 49: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,215 INFO L290 TraceCheckUtils]: 48: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,215 INFO L272 TraceCheckUtils]: 47: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~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)); {14174#true} is VALID [2022-04-27 12:56:24,220 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14174#true} {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #90#return; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,220 INFO L290 TraceCheckUtils]: 45: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,220 INFO L290 TraceCheckUtils]: 44: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,220 INFO L290 TraceCheckUtils]: 43: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,220 INFO L272 TraceCheckUtils]: 42: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,220 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14174#true} {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #88#return; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,220 INFO L290 TraceCheckUtils]: 40: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,220 INFO L290 TraceCheckUtils]: 39: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,221 INFO L290 TraceCheckUtils]: 38: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,221 INFO L272 TraceCheckUtils]: 37: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,221 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14174#true} {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #86#return; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,221 INFO L290 TraceCheckUtils]: 35: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,221 INFO L290 TraceCheckUtils]: 34: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,221 INFO L290 TraceCheckUtils]: 33: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,221 INFO L272 TraceCheckUtils]: 32: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,222 INFO L290 TraceCheckUtils]: 31: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post7 < 10);havoc #t~post7; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14536#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ (* (- 1) (+ main_~k~0 1) main_~s~0) main_~r~0))) 0) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-27 12:56:24,224 INFO L290 TraceCheckUtils]: 28: Hoare triple {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 12:56:24,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 12:56:24,225 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14174#true} {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} #84#return; {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 12:56:24,225 INFO L290 TraceCheckUtils]: 25: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,225 INFO L290 TraceCheckUtils]: 24: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,225 INFO L290 TraceCheckUtils]: 23: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,225 INFO L272 TraceCheckUtils]: 22: Hoare triple {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,225 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14174#true} {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} #82#return; {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 12:56:24,225 INFO L290 TraceCheckUtils]: 20: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,225 INFO L290 TraceCheckUtils]: 19: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,225 INFO L290 TraceCheckUtils]: 18: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,226 INFO L272 TraceCheckUtils]: 17: Hoare triple {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 16: Hoare triple {14174#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; {14606#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 main_~a~0)))} is VALID [2022-04-27 12:56:24,230 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14174#true} {14174#true} #80#return; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 14: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 13: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 12: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L272 TraceCheckUtils]: 11: Hoare triple {14174#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14174#true} {14174#true} #78#return; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {14174#true} assume !(0 == ~cond); {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {14174#true} ~cond := #in~cond; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L272 TraceCheckUtils]: 6: Hoare triple {14174#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {14174#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14174#true} is VALID [2022-04-27 12:56:24,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {14174#true} call #t~ret8 := main(); {14174#true} is VALID [2022-04-27 12:56:24,231 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14174#true} {14174#true} #98#return; {14174#true} is VALID [2022-04-27 12:56:24,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {14174#true} assume true; {14174#true} is VALID [2022-04-27 12:56:24,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {14174#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {14174#true} is VALID [2022-04-27 12:56:24,231 INFO L272 TraceCheckUtils]: 0: Hoare triple {14174#true} call ULTIMATE.init(); {14174#true} is VALID [2022-04-27 12:56:24,231 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 30 proven. 17 refuted. 0 times theorem prover too weak. 115 trivial. 0 not checked. [2022-04-27 12:56:24,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:56:24,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [897070850] [2022-04-27 12:56:24,231 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:56:24,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1741929383] [2022-04-27 12:56:24,231 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1741929383] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:56:24,231 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:56:24,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 19 [2022-04-27 12:56:24,232 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [435554658] [2022-04-27 12:56:24,232 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:56:24,232 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) Word has length 84 [2022-04-27 12:56:24,232 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:56:24,233 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 12:56:25,006 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:56:25,006 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-27 12:56:25,006 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:56:25,007 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-27 12:56:25,007 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=284, Unknown=0, NotChecked=0, Total=342 [2022-04-27 12:56:25,007 INFO L87 Difference]: Start difference. First operand 330 states and 402 transitions. Second operand has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 12:56:32,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:56:32,903 INFO L93 Difference]: Finished difference Result 392 states and 488 transitions. [2022-04-27 12:56:32,903 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-27 12:56:32,903 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) Word has length 84 [2022-04-27 12:56:32,903 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:56:32,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 12:56:32,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 173 transitions. [2022-04-27 12:56:32,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 12:56:32,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 173 transitions. [2022-04-27 12:56:32,908 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 173 transitions. [2022-04-27 12:56:36,241 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 173 edges. 172 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 12:56:36,248 INFO L225 Difference]: With dead ends: 392 [2022-04-27 12:56:36,248 INFO L226 Difference]: Without dead ends: 377 [2022-04-27 12:56:36,248 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 185 GetRequests, 149 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 232 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=248, Invalid=1084, Unknown=0, NotChecked=0, Total=1332 [2022-04-27 12:56:36,248 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 93 mSDsluCounter, 378 mSDsCounter, 0 mSdLazyCounter, 740 mSolverCounterSat, 141 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 93 SdHoareTripleChecker+Valid, 428 SdHoareTripleChecker+Invalid, 881 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 141 IncrementalHoareTripleChecker+Valid, 740 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.8s IncrementalHoareTripleChecker+Time [2022-04-27 12:56:36,249 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [93 Valid, 428 Invalid, 881 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [141 Valid, 740 Invalid, 0 Unknown, 0 Unchecked, 3.8s Time] [2022-04-27 12:56:36,249 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 377 states. [2022-04-27 12:56:36,558 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 377 to 368. [2022-04-27 12:56:36,558 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:56:36,558 INFO L82 GeneralOperation]: Start isEquivalent. First operand 377 states. Second operand has 368 states, 247 states have (on average 1.1902834008097165) internal successors, (294), 252 states have internal predecessors, (294), 84 states have call successors, (84), 37 states have call predecessors, (84), 36 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:56:36,559 INFO L74 IsIncluded]: Start isIncluded. First operand 377 states. Second operand has 368 states, 247 states have (on average 1.1902834008097165) internal successors, (294), 252 states have internal predecessors, (294), 84 states have call successors, (84), 37 states have call predecessors, (84), 36 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:56:36,559 INFO L87 Difference]: Start difference. First operand 377 states. Second operand has 368 states, 247 states have (on average 1.1902834008097165) internal successors, (294), 252 states have internal predecessors, (294), 84 states have call successors, (84), 37 states have call predecessors, (84), 36 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:56:36,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:56:36,566 INFO L93 Difference]: Finished difference Result 377 states and 469 transitions. [2022-04-27 12:56:36,566 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 469 transitions. [2022-04-27 12:56:36,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:56:36,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:56:36,568 INFO L74 IsIncluded]: Start isIncluded. First operand has 368 states, 247 states have (on average 1.1902834008097165) internal successors, (294), 252 states have internal predecessors, (294), 84 states have call successors, (84), 37 states have call predecessors, (84), 36 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) Second operand 377 states. [2022-04-27 12:56:36,568 INFO L87 Difference]: Start difference. First operand has 368 states, 247 states have (on average 1.1902834008097165) internal successors, (294), 252 states have internal predecessors, (294), 84 states have call successors, (84), 37 states have call predecessors, (84), 36 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) Second operand 377 states. [2022-04-27 12:56:36,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:56:36,574 INFO L93 Difference]: Finished difference Result 377 states and 469 transitions. [2022-04-27 12:56:36,574 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 469 transitions. [2022-04-27 12:56:36,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:56:36,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:56:36,575 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:56:36,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:56:36,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 368 states, 247 states have (on average 1.1902834008097165) internal successors, (294), 252 states have internal predecessors, (294), 84 states have call successors, (84), 37 states have call predecessors, (84), 36 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:56:36,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 368 states to 368 states and 460 transitions. [2022-04-27 12:56:36,583 INFO L78 Accepts]: Start accepts. Automaton has 368 states and 460 transitions. Word has length 84 [2022-04-27 12:56:36,583 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:56:36,583 INFO L495 AbstractCegarLoop]: Abstraction has 368 states and 460 transitions. [2022-04-27 12:56:36,584 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 17 states have (on average 2.6470588235294117) internal successors, (45), 18 states have internal predecessors, (45), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 9 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 12:56:36,584 INFO L276 IsEmpty]: Start isEmpty. Operand 368 states and 460 transitions. [2022-04-27 12:56:36,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 102 [2022-04-27 12:56:36,584 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:56:36,585 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:56:36,615 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-27 12:56:36,801 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 12:56:36,801 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:56:36,802 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:56:36,802 INFO L85 PathProgramCache]: Analyzing trace with hash 1415088729, now seen corresponding path program 1 times [2022-04-27 12:56:36,802 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:56:36,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [202092275] [2022-04-27 12:56:36,802 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:56:36,802 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:56:36,820 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:56:36,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1231807959] [2022-04-27 12:56:36,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:56:36,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:56:36,820 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:56:36,845 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 12:56:36,880 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 12:56:36,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:56:36,907 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-27 12:56:36,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:56:36,939 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:56:46,000 INFO L272 TraceCheckUtils]: 0: Hoare triple {16584#true} call ULTIMATE.init(); {16584#true} is VALID [2022-04-27 12:56:46,000 INFO L290 TraceCheckUtils]: 1: Hoare triple {16584#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16584#true} is VALID [2022-04-27 12:56:46,000 INFO L290 TraceCheckUtils]: 2: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,000 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16584#true} {16584#true} #98#return; {16584#true} is VALID [2022-04-27 12:56:46,000 INFO L272 TraceCheckUtils]: 4: Hoare triple {16584#true} call #t~ret8 := main(); {16584#true} is VALID [2022-04-27 12:56:46,000 INFO L290 TraceCheckUtils]: 5: Hoare triple {16584#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16584#true} is VALID [2022-04-27 12:56:46,000 INFO L272 TraceCheckUtils]: 6: Hoare triple {16584#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L290 TraceCheckUtils]: 7: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L290 TraceCheckUtils]: 8: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L290 TraceCheckUtils]: 9: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16584#true} {16584#true} #78#return; {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L272 TraceCheckUtils]: 11: Hoare triple {16584#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L290 TraceCheckUtils]: 12: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L290 TraceCheckUtils]: 13: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L290 TraceCheckUtils]: 14: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,001 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16584#true} {16584#true} #80#return; {16584#true} is VALID [2022-04-27 12:56:46,002 INFO L290 TraceCheckUtils]: 16: Hoare triple {16584#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; {16637#(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 12:56:46,002 INFO L272 TraceCheckUtils]: 17: Hoare triple {16637#(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)); {16584#true} is VALID [2022-04-27 12:56:46,002 INFO L290 TraceCheckUtils]: 18: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,002 INFO L290 TraceCheckUtils]: 19: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,002 INFO L290 TraceCheckUtils]: 20: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,002 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16584#true} {16637#(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))} #82#return; {16637#(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 12:56:46,002 INFO L272 TraceCheckUtils]: 22: Hoare triple {16637#(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)); {16584#true} is VALID [2022-04-27 12:56:46,003 INFO L290 TraceCheckUtils]: 23: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,003 INFO L290 TraceCheckUtils]: 24: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,003 INFO L290 TraceCheckUtils]: 25: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,003 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16584#true} {16637#(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))} #84#return; {16637#(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 12:56:46,003 INFO L290 TraceCheckUtils]: 27: Hoare triple {16637#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16637#(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 12:56:46,004 INFO L290 TraceCheckUtils]: 28: Hoare triple {16637#(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 !!(#t~post6 < 10);havoc #t~post6; {16637#(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 12:56:46,004 INFO L290 TraceCheckUtils]: 29: Hoare triple {16637#(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; {16677#(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 12:56:46,004 INFO L290 TraceCheckUtils]: 30: Hoare triple {16677#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16677#(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 12:56:46,005 INFO L290 TraceCheckUtils]: 31: Hoare triple {16677#(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 !!(#t~post7 < 10);havoc #t~post7; {16677#(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 12:56:46,005 INFO L272 TraceCheckUtils]: 32: Hoare triple {16677#(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)); {16584#true} is VALID [2022-04-27 12:56:46,005 INFO L290 TraceCheckUtils]: 33: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,005 INFO L290 TraceCheckUtils]: 34: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,005 INFO L290 TraceCheckUtils]: 35: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16584#true} {16677#(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))} #86#return; {16677#(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 12:56:46,006 INFO L272 TraceCheckUtils]: 37: Hoare triple {16677#(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)); {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L290 TraceCheckUtils]: 38: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L290 TraceCheckUtils]: 39: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L290 TraceCheckUtils]: 40: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16584#true} {16677#(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))} #88#return; {16677#(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 12:56:46,006 INFO L272 TraceCheckUtils]: 42: Hoare triple {16677#(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)); {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L290 TraceCheckUtils]: 43: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L290 TraceCheckUtils]: 44: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,006 INFO L290 TraceCheckUtils]: 45: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,007 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16584#true} {16677#(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))} #90#return; {16677#(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 12:56:46,007 INFO L272 TraceCheckUtils]: 47: Hoare triple {16677#(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)); {16584#true} is VALID [2022-04-27 12:56:46,007 INFO L290 TraceCheckUtils]: 48: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,007 INFO L290 TraceCheckUtils]: 49: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,007 INFO L290 TraceCheckUtils]: 50: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,008 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {16584#true} {16677#(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))} #92#return; {16677#(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 12:56:46,008 INFO L290 TraceCheckUtils]: 52: Hoare triple {16677#(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; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,008 INFO L290 TraceCheckUtils]: 53: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,009 INFO L290 TraceCheckUtils]: 54: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,009 INFO L272 TraceCheckUtils]: 55: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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)); {16584#true} is VALID [2022-04-27 12:56:46,009 INFO L290 TraceCheckUtils]: 56: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,009 INFO L290 TraceCheckUtils]: 57: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,009 INFO L290 TraceCheckUtils]: 58: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,009 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16584#true} {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,010 INFO L272 TraceCheckUtils]: 60: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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)); {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L290 TraceCheckUtils]: 61: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L290 TraceCheckUtils]: 62: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L290 TraceCheckUtils]: 63: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16584#true} {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,010 INFO L272 TraceCheckUtils]: 65: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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)); {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L290 TraceCheckUtils]: 66: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L290 TraceCheckUtils]: 67: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,010 INFO L290 TraceCheckUtils]: 68: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,011 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {16584#true} {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,011 INFO L272 TraceCheckUtils]: 70: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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)); {16584#true} is VALID [2022-04-27 12:56:46,011 INFO L290 TraceCheckUtils]: 71: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,011 INFO L290 TraceCheckUtils]: 72: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,011 INFO L290 TraceCheckUtils]: 73: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,012 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {16584#true} {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,012 INFO L290 TraceCheckUtils]: 75: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= 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 12:56:46,013 INFO L290 TraceCheckUtils]: 76: Hoare triple {16747#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,013 INFO L290 TraceCheckUtils]: 77: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,013 INFO L290 TraceCheckUtils]: 78: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,014 INFO L290 TraceCheckUtils]: 79: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,018 INFO L290 TraceCheckUtils]: 80: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,018 INFO L290 TraceCheckUtils]: 81: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,018 INFO L272 TraceCheckUtils]: 82: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~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)); {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L290 TraceCheckUtils]: 83: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L290 TraceCheckUtils]: 84: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L290 TraceCheckUtils]: 85: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16584#true} {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,019 INFO L272 TraceCheckUtils]: 87: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~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)); {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L290 TraceCheckUtils]: 88: Hoare triple {16584#true} ~cond := #in~cond; {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L290 TraceCheckUtils]: 89: Hoare triple {16584#true} assume !(0 == ~cond); {16584#true} is VALID [2022-04-27 12:56:46,019 INFO L290 TraceCheckUtils]: 90: Hoare triple {16584#true} assume true; {16584#true} is VALID [2022-04-27 12:56:46,020 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {16584#true} {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,020 INFO L272 TraceCheckUtils]: 92: Hoare triple {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~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)); {16584#true} is VALID [2022-04-27 12:56:46,020 INFO L290 TraceCheckUtils]: 93: Hoare triple {16584#true} ~cond := #in~cond; {16872#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:56:46,020 INFO L290 TraceCheckUtils]: 94: Hoare triple {16872#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {16876#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:56:46,020 INFO L290 TraceCheckUtils]: 95: Hoare triple {16876#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {16876#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:56:46,021 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {16876#(not (= |__VERIFIER_assert_#in~cond| 0))} {16820#(and (<= (+ main_~s~0 1) 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {16883#(and (<= (+ main_~s~0 1) 0) (= 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_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 12:56:46,050 INFO L272 TraceCheckUtils]: 97: Hoare triple {16883#(and (<= (+ main_~s~0 1) 0) (= 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_~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)); {16887#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:56:46,050 INFO L290 TraceCheckUtils]: 98: Hoare triple {16887#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16891#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:56:46,050 INFO L290 TraceCheckUtils]: 99: Hoare triple {16891#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16585#false} is VALID [2022-04-27 12:56:46,050 INFO L290 TraceCheckUtils]: 100: Hoare triple {16585#false} assume !false; {16585#false} is VALID [2022-04-27 12:56:46,051 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 51 proven. 23 refuted. 0 times theorem prover too weak. 214 trivial. 0 not checked. [2022-04-27 12:56:46,051 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:57:35,648 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:57:36,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:57:36,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [202092275] [2022-04-27 12:57:36,183 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:57:36,183 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1231807959] [2022-04-27 12:57:36,183 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1231807959] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 12:57:36,183 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 12:57:36,183 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-27 12:57:36,183 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2077122691] [2022-04-27 12:57:36,183 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 12:57:36,183 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) Word has length 101 [2022-04-27 12:57:36,184 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:57:36,184 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) [2022-04-27 12:57:36,302 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 12:57:36,302 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 12:57:36,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:57:36,302 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 12:57:36,302 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-04-27 12:57:36,303 INFO L87 Difference]: Start difference. First operand 368 states and 460 transitions. Second operand has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) [2022-04-27 12:57:45,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:45,981 INFO L93 Difference]: Finished difference Result 377 states and 468 transitions. [2022-04-27 12:57:45,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 12:57:45,981 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) Word has length 101 [2022-04-27 12:57:45,981 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:57:45,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) [2022-04-27 12:57:45,982 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 116 transitions. [2022-04-27 12:57:45,982 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) [2022-04-27 12:57:45,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 116 transitions. [2022-04-27 12:57:45,984 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 116 transitions. [2022-04-27 12:57:46,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:57:46,133 INFO L225 Difference]: With dead ends: 377 [2022-04-27 12:57:46,133 INFO L226 Difference]: Without dead ends: 375 [2022-04-27 12:57:46,134 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=73, Invalid=269, Unknown=0, NotChecked=0, Total=342 [2022-04-27 12:57:46,134 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 29 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 505 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 37 SdHoareTripleChecker+Valid, 315 SdHoareTripleChecker+Invalid, 525 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 505 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-27 12:57:46,134 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [37 Valid, 315 Invalid, 525 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 505 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-27 12:57:46,135 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 375 states. [2022-04-27 12:57:46,448 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 375 to 372. [2022-04-27 12:57:46,448 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:57:46,449 INFO L82 GeneralOperation]: Start isEquivalent. First operand 375 states. Second operand has 372 states, 250 states have (on average 1.184) internal successors, (296), 255 states have internal predecessors, (296), 84 states have call successors, (84), 38 states have call predecessors, (84), 37 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:57:46,449 INFO L74 IsIncluded]: Start isIncluded. First operand 375 states. Second operand has 372 states, 250 states have (on average 1.184) internal successors, (296), 255 states have internal predecessors, (296), 84 states have call successors, (84), 38 states have call predecessors, (84), 37 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:57:46,449 INFO L87 Difference]: Start difference. First operand 375 states. Second operand has 372 states, 250 states have (on average 1.184) internal successors, (296), 255 states have internal predecessors, (296), 84 states have call successors, (84), 38 states have call predecessors, (84), 37 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:57:46,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:46,456 INFO L93 Difference]: Finished difference Result 375 states and 465 transitions. [2022-04-27 12:57:46,456 INFO L276 IsEmpty]: Start isEmpty. Operand 375 states and 465 transitions. [2022-04-27 12:57:46,456 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:57:46,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:57:46,457 INFO L74 IsIncluded]: Start isIncluded. First operand has 372 states, 250 states have (on average 1.184) internal successors, (296), 255 states have internal predecessors, (296), 84 states have call successors, (84), 38 states have call predecessors, (84), 37 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) Second operand 375 states. [2022-04-27 12:57:46,457 INFO L87 Difference]: Start difference. First operand has 372 states, 250 states have (on average 1.184) internal successors, (296), 255 states have internal predecessors, (296), 84 states have call successors, (84), 38 states have call predecessors, (84), 37 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) Second operand 375 states. [2022-04-27 12:57:46,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:46,464 INFO L93 Difference]: Finished difference Result 375 states and 465 transitions. [2022-04-27 12:57:46,464 INFO L276 IsEmpty]: Start isEmpty. Operand 375 states and 465 transitions. [2022-04-27 12:57:46,465 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:57:46,465 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:57:46,465 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:57:46,465 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:57:46,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 372 states, 250 states have (on average 1.184) internal successors, (296), 255 states have internal predecessors, (296), 84 states have call successors, (84), 38 states have call predecessors, (84), 37 states have return successors, (82), 78 states have call predecessors, (82), 82 states have call successors, (82) [2022-04-27 12:57:46,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 372 states to 372 states and 462 transitions. [2022-04-27 12:57:46,472 INFO L78 Accepts]: Start accepts. Automaton has 372 states and 462 transitions. Word has length 101 [2022-04-27 12:57:46,473 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:57:46,473 INFO L495 AbstractCegarLoop]: Abstraction has 372 states and 462 transitions. [2022-04-27 12:57:46,473 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 3.1) internal successors, (31), 9 states have internal predecessors, (31), 6 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 6 states have call predecessors, (16), 5 states have call successors, (16) [2022-04-27 12:57:46,473 INFO L276 IsEmpty]: Start isEmpty. Operand 372 states and 462 transitions. [2022-04-27 12:57:46,473 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-27 12:57:46,474 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:57:46,474 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 3, 3, 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] [2022-04-27 12:57:46,492 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-27 12:57:46,690 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-27 12:57:46,690 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:57:46,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:57:46,691 INFO L85 PathProgramCache]: Analyzing trace with hash -2076615365, now seen corresponding path program 4 times [2022-04-27 12:57:46,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:57:46,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [89299171] [2022-04-27 12:57:46,691 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:57:46,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:57:46,702 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:57:46,702 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [659434608] [2022-04-27 12:57:46,702 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 12:57:46,702 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:57:46,702 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:57:46,703 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:57:46,704 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-27 12:57:46,758 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 12:57:46,758 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:57:46,759 INFO L263 TraceCheckSpWp]: Trace formula consists of 253 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 12:57:46,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:57:46,773 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:57:47,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {18821#true} call ULTIMATE.init(); {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {18821#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18821#true} {18821#true} #98#return; {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L272 TraceCheckUtils]: 4: Hoare triple {18821#true} call #t~ret8 := main(); {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L290 TraceCheckUtils]: 5: Hoare triple {18821#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L272 TraceCheckUtils]: 6: Hoare triple {18821#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,001 INFO L290 TraceCheckUtils]: 7: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 9: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18821#true} {18821#true} #78#return; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L272 TraceCheckUtils]: 11: Hoare triple {18821#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 12: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18821#true} {18821#true} #80#return; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 16: Hoare triple {18821#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; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L272 TraceCheckUtils]: 17: Hoare triple {18821#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 18: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 19: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 20: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18821#true} {18821#true} #82#return; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L272 TraceCheckUtils]: 22: Hoare triple {18821#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 23: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 24: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 25: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18821#true} {18821#true} #84#return; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 27: Hoare triple {18821#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 28: Hoare triple {18821#true} assume !!(#t~post6 < 10);havoc #t~post6; {18821#true} is VALID [2022-04-27 12:57:47,002 INFO L290 TraceCheckUtils]: 29: Hoare triple {18821#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 30: Hoare triple {18821#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 31: Hoare triple {18821#true} assume !!(#t~post7 < 10);havoc #t~post7; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L272 TraceCheckUtils]: 32: Hoare triple {18821#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 33: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 34: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 35: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18821#true} {18821#true} #86#return; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L272 TraceCheckUtils]: 37: Hoare triple {18821#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 38: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 39: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 40: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18821#true} {18821#true} #88#return; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L272 TraceCheckUtils]: 42: Hoare triple {18821#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 43: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 44: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 45: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18821#true} {18821#true} #90#return; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L272 TraceCheckUtils]: 47: Hoare triple {18821#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)); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 48: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 49: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,003 INFO L290 TraceCheckUtils]: 50: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,004 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {18821#true} {18821#true} #92#return; {18821#true} is VALID [2022-04-27 12:57:47,004 INFO L290 TraceCheckUtils]: 52: Hoare triple {18821#true} assume !(~c~0 >= ~b~0); {18982#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-27 12:57:47,004 INFO L290 TraceCheckUtils]: 53: Hoare triple {18982#(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; {18986#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 12:57:47,004 INFO L290 TraceCheckUtils]: 54: Hoare triple {18986#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18986#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 12:57:47,005 INFO L290 TraceCheckUtils]: 55: Hoare triple {18986#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 10);havoc #t~post6; {18986#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 12:57:47,005 INFO L290 TraceCheckUtils]: 56: Hoare triple {18986#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,005 INFO L290 TraceCheckUtils]: 57: Hoare triple {18996#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,017 INFO L290 TraceCheckUtils]: 58: Hoare triple {18996#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 10);havoc #t~post7; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,017 INFO L272 TraceCheckUtils]: 59: Hoare triple {18996#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,017 INFO L290 TraceCheckUtils]: 60: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,017 INFO L290 TraceCheckUtils]: 61: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,017 INFO L290 TraceCheckUtils]: 62: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {18821#true} {18996#(< main_~b~0 main_~c~0)} #86#return; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,018 INFO L272 TraceCheckUtils]: 64: Hoare triple {18996#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L290 TraceCheckUtils]: 65: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L290 TraceCheckUtils]: 66: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L290 TraceCheckUtils]: 67: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {18821#true} {18996#(< main_~b~0 main_~c~0)} #88#return; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,018 INFO L272 TraceCheckUtils]: 69: Hoare triple {18996#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L290 TraceCheckUtils]: 70: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,018 INFO L290 TraceCheckUtils]: 71: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,019 INFO L290 TraceCheckUtils]: 72: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,019 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {18821#true} {18996#(< main_~b~0 main_~c~0)} #90#return; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,019 INFO L272 TraceCheckUtils]: 74: Hoare triple {18996#(< 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)); {18821#true} is VALID [2022-04-27 12:57:47,019 INFO L290 TraceCheckUtils]: 75: Hoare triple {18821#true} ~cond := #in~cond; {18821#true} is VALID [2022-04-27 12:57:47,019 INFO L290 TraceCheckUtils]: 76: Hoare triple {18821#true} assume !(0 == ~cond); {18821#true} is VALID [2022-04-27 12:57:47,019 INFO L290 TraceCheckUtils]: 77: Hoare triple {18821#true} assume true; {18821#true} is VALID [2022-04-27 12:57:47,020 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {18821#true} {18996#(< main_~b~0 main_~c~0)} #92#return; {18996#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 12:57:47,020 INFO L290 TraceCheckUtils]: 79: Hoare triple {18996#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {18822#false} is VALID [2022-04-27 12:57:47,020 INFO L290 TraceCheckUtils]: 80: Hoare triple {18822#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; {18822#false} is VALID [2022-04-27 12:57:47,020 INFO L290 TraceCheckUtils]: 81: Hoare triple {18822#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 82: Hoare triple {18822#false} assume !!(#t~post6 < 10);havoc #t~post6; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 83: Hoare triple {18822#false} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 84: Hoare triple {18822#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 85: Hoare triple {18822#false} assume !!(#t~post7 < 10);havoc #t~post7; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L272 TraceCheckUtils]: 86: Hoare triple {18822#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 87: Hoare triple {18822#false} ~cond := #in~cond; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 88: Hoare triple {18822#false} assume !(0 == ~cond); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 89: Hoare triple {18822#false} assume true; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {18822#false} {18822#false} #86#return; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L272 TraceCheckUtils]: 91: Hoare triple {18822#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 92: Hoare triple {18822#false} ~cond := #in~cond; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 93: Hoare triple {18822#false} assume !(0 == ~cond); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 94: Hoare triple {18822#false} assume true; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L284 TraceCheckUtils]: 95: Hoare quadruple {18822#false} {18822#false} #88#return; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L272 TraceCheckUtils]: 96: Hoare triple {18822#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 97: Hoare triple {18822#false} ~cond := #in~cond; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 98: Hoare triple {18822#false} assume !(0 == ~cond); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 99: Hoare triple {18822#false} assume true; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {18822#false} {18822#false} #90#return; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L272 TraceCheckUtils]: 101: Hoare triple {18822#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)); {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 102: Hoare triple {18822#false} ~cond := #in~cond; {18822#false} is VALID [2022-04-27 12:57:47,021 INFO L290 TraceCheckUtils]: 103: Hoare triple {18822#false} assume 0 == ~cond; {18822#false} is VALID [2022-04-27 12:57:47,022 INFO L290 TraceCheckUtils]: 104: Hoare triple {18822#false} assume !false; {18822#false} is VALID [2022-04-27 12:57:47,022 INFO L134 CoverageAnalysis]: Checked inductivity of 295 backedges. 141 proven. 0 refuted. 0 times theorem prover too weak. 154 trivial. 0 not checked. [2022-04-27 12:57:47,022 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 12:57:47,022 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:57:47,022 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [89299171] [2022-04-27 12:57:47,022 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:57:47,022 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [659434608] [2022-04-27 12:57:47,022 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [659434608] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 12:57:47,022 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 12:57:47,022 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 12:57:47,022 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1769107360] [2022-04-27 12:57:47,022 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 12:57:47,023 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) Word has length 105 [2022-04-27 12:57:47,023 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:57:47,023 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-27 12:57:47,071 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:57:47,072 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 12:57:47,072 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:57:47,072 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 12:57:47,072 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 12:57:47,072 INFO L87 Difference]: Start difference. First operand 372 states and 462 transitions. Second operand has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-27 12:57:47,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:47,667 INFO L93 Difference]: Finished difference Result 535 states and 713 transitions. [2022-04-27 12:57:47,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 12:57:47,668 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) Word has length 105 [2022-04-27 12:57:47,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:57:47,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-27 12:57:47,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 12:57:47,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-27 12:57:47,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 12:57:47,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-27 12:57:47,748 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:57:47,757 INFO L225 Difference]: With dead ends: 535 [2022-04-27 12:57:47,757 INFO L226 Difference]: Without dead ends: 417 [2022-04-27 12:57:47,757 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 107 GetRequests, 102 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 12:57:47,758 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 12 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 172 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 12:57:47,758 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 172 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 12:57:47,758 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 417 states. [2022-04-27 12:57:48,134 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 417 to 387. [2022-04-27 12:57:48,134 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:57:48,135 INFO L82 GeneralOperation]: Start isEquivalent. First operand 417 states. Second operand has 387 states, 259 states have (on average 1.193050193050193) internal successors, (309), 263 states have internal predecessors, (309), 90 states have call successors, (90), 38 states have call predecessors, (90), 37 states have return successors, (88), 85 states have call predecessors, (88), 88 states have call successors, (88) [2022-04-27 12:57:48,135 INFO L74 IsIncluded]: Start isIncluded. First operand 417 states. Second operand has 387 states, 259 states have (on average 1.193050193050193) internal successors, (309), 263 states have internal predecessors, (309), 90 states have call successors, (90), 38 states have call predecessors, (90), 37 states have return successors, (88), 85 states have call predecessors, (88), 88 states have call successors, (88) [2022-04-27 12:57:48,135 INFO L87 Difference]: Start difference. First operand 417 states. Second operand has 387 states, 259 states have (on average 1.193050193050193) internal successors, (309), 263 states have internal predecessors, (309), 90 states have call successors, (90), 38 states have call predecessors, (90), 37 states have return successors, (88), 85 states have call predecessors, (88), 88 states have call successors, (88) [2022-04-27 12:57:48,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:48,143 INFO L93 Difference]: Finished difference Result 417 states and 535 transitions. [2022-04-27 12:57:48,143 INFO L276 IsEmpty]: Start isEmpty. Operand 417 states and 535 transitions. [2022-04-27 12:57:48,144 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:57:48,144 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:57:48,144 INFO L74 IsIncluded]: Start isIncluded. First operand has 387 states, 259 states have (on average 1.193050193050193) internal successors, (309), 263 states have internal predecessors, (309), 90 states have call successors, (90), 38 states have call predecessors, (90), 37 states have return successors, (88), 85 states have call predecessors, (88), 88 states have call successors, (88) Second operand 417 states. [2022-04-27 12:57:48,145 INFO L87 Difference]: Start difference. First operand has 387 states, 259 states have (on average 1.193050193050193) internal successors, (309), 263 states have internal predecessors, (309), 90 states have call successors, (90), 38 states have call predecessors, (90), 37 states have return successors, (88), 85 states have call predecessors, (88), 88 states have call successors, (88) Second operand 417 states. [2022-04-27 12:57:48,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:48,152 INFO L93 Difference]: Finished difference Result 417 states and 535 transitions. [2022-04-27 12:57:48,152 INFO L276 IsEmpty]: Start isEmpty. Operand 417 states and 535 transitions. [2022-04-27 12:57:48,153 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:57:48,153 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:57:48,153 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:57:48,153 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:57:48,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 387 states, 259 states have (on average 1.193050193050193) internal successors, (309), 263 states have internal predecessors, (309), 90 states have call successors, (90), 38 states have call predecessors, (90), 37 states have return successors, (88), 85 states have call predecessors, (88), 88 states have call successors, (88) [2022-04-27 12:57:48,161 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 387 states to 387 states and 487 transitions. [2022-04-27 12:57:48,161 INFO L78 Accepts]: Start accepts. Automaton has 387 states and 487 transitions. Word has length 105 [2022-04-27 12:57:48,161 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:57:48,161 INFO L495 AbstractCegarLoop]: Abstraction has 387 states and 487 transitions. [2022-04-27 12:57:48,161 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.8) internal successors, (34), 5 states have internal predecessors, (34), 3 states have call successors, (18), 2 states have call predecessors, (18), 2 states have return successors, (16), 3 states have call predecessors, (16), 3 states have call successors, (16) [2022-04-27 12:57:48,161 INFO L276 IsEmpty]: Start isEmpty. Operand 387 states and 487 transitions. [2022-04-27 12:57:48,162 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-27 12:57:48,162 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:57:48,162 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 12:57:48,180 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-27 12:57:48,378 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-27 12:57:48,378 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:57:48,378 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:57:48,378 INFO L85 PathProgramCache]: Analyzing trace with hash 1546024104, now seen corresponding path program 1 times [2022-04-27 12:57:48,379 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:57:48,379 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [218179076] [2022-04-27 12:57:48,379 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:57:48,379 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:57:48,389 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:57:48,389 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [831517452] [2022-04-27 12:57:48,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:57:48,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:57:48,389 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:57:48,408 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:57:48,410 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-27 12:57:48,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:57:48,467 INFO L263 TraceCheckSpWp]: Trace formula consists of 332 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 12:57:48,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:57:48,485 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:57:48,931 INFO L272 TraceCheckUtils]: 0: Hoare triple {21321#true} call ULTIMATE.init(); {21321#true} is VALID [2022-04-27 12:57:48,932 INFO L290 TraceCheckUtils]: 1: Hoare triple {21321#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,932 INFO L290 TraceCheckUtils]: 2: Hoare triple {21329#(<= ~counter~0 0)} assume true; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21329#(<= ~counter~0 0)} {21321#true} #98#return; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,933 INFO L272 TraceCheckUtils]: 4: Hoare triple {21329#(<= ~counter~0 0)} call #t~ret8 := main(); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,933 INFO L290 TraceCheckUtils]: 5: Hoare triple {21329#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,933 INFO L272 TraceCheckUtils]: 6: Hoare triple {21329#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,934 INFO L290 TraceCheckUtils]: 7: Hoare triple {21329#(<= ~counter~0 0)} ~cond := #in~cond; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,934 INFO L290 TraceCheckUtils]: 8: Hoare triple {21329#(<= ~counter~0 0)} assume !(0 == ~cond); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,934 INFO L290 TraceCheckUtils]: 9: Hoare triple {21329#(<= ~counter~0 0)} assume true; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,935 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21329#(<= ~counter~0 0)} {21329#(<= ~counter~0 0)} #78#return; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,935 INFO L272 TraceCheckUtils]: 11: Hoare triple {21329#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,935 INFO L290 TraceCheckUtils]: 12: Hoare triple {21329#(<= ~counter~0 0)} ~cond := #in~cond; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,935 INFO L290 TraceCheckUtils]: 13: Hoare triple {21329#(<= ~counter~0 0)} assume !(0 == ~cond); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {21329#(<= ~counter~0 0)} assume true; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,936 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21329#(<= ~counter~0 0)} {21329#(<= ~counter~0 0)} #80#return; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {21329#(<= ~counter~0 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; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,937 INFO L272 TraceCheckUtils]: 17: Hoare triple {21329#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {21329#(<= ~counter~0 0)} ~cond := #in~cond; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,937 INFO L290 TraceCheckUtils]: 19: Hoare triple {21329#(<= ~counter~0 0)} assume !(0 == ~cond); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,937 INFO L290 TraceCheckUtils]: 20: Hoare triple {21329#(<= ~counter~0 0)} assume true; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,938 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21329#(<= ~counter~0 0)} {21329#(<= ~counter~0 0)} #82#return; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,938 INFO L272 TraceCheckUtils]: 22: Hoare triple {21329#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,938 INFO L290 TraceCheckUtils]: 23: Hoare triple {21329#(<= ~counter~0 0)} ~cond := #in~cond; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,939 INFO L290 TraceCheckUtils]: 24: Hoare triple {21329#(<= ~counter~0 0)} assume !(0 == ~cond); {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {21329#(<= ~counter~0 0)} assume true; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,939 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {21329#(<= ~counter~0 0)} {21329#(<= ~counter~0 0)} #84#return; {21329#(<= ~counter~0 0)} is VALID [2022-04-27 12:57:48,940 INFO L290 TraceCheckUtils]: 27: Hoare triple {21329#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21408#(<= ~counter~0 1)} is VALID [2022-04-27 12:57:48,940 INFO L290 TraceCheckUtils]: 28: Hoare triple {21408#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {21408#(<= ~counter~0 1)} is VALID [2022-04-27 12:57:48,940 INFO L290 TraceCheckUtils]: 29: Hoare triple {21408#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21408#(<= ~counter~0 1)} is VALID [2022-04-27 12:57:48,941 INFO L290 TraceCheckUtils]: 30: Hoare triple {21408#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,941 INFO L290 TraceCheckUtils]: 31: Hoare triple {21418#(<= ~counter~0 2)} assume !!(#t~post7 < 10);havoc #t~post7; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,941 INFO L272 TraceCheckUtils]: 32: Hoare triple {21418#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,942 INFO L290 TraceCheckUtils]: 33: Hoare triple {21418#(<= ~counter~0 2)} ~cond := #in~cond; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,942 INFO L290 TraceCheckUtils]: 34: Hoare triple {21418#(<= ~counter~0 2)} assume !(0 == ~cond); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,942 INFO L290 TraceCheckUtils]: 35: Hoare triple {21418#(<= ~counter~0 2)} assume true; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,943 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21418#(<= ~counter~0 2)} {21418#(<= ~counter~0 2)} #86#return; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,943 INFO L272 TraceCheckUtils]: 37: Hoare triple {21418#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,943 INFO L290 TraceCheckUtils]: 38: Hoare triple {21418#(<= ~counter~0 2)} ~cond := #in~cond; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,944 INFO L290 TraceCheckUtils]: 39: Hoare triple {21418#(<= ~counter~0 2)} assume !(0 == ~cond); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,944 INFO L290 TraceCheckUtils]: 40: Hoare triple {21418#(<= ~counter~0 2)} assume true; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,944 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21418#(<= ~counter~0 2)} {21418#(<= ~counter~0 2)} #88#return; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,945 INFO L272 TraceCheckUtils]: 42: Hoare triple {21418#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,945 INFO L290 TraceCheckUtils]: 43: Hoare triple {21418#(<= ~counter~0 2)} ~cond := #in~cond; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,945 INFO L290 TraceCheckUtils]: 44: Hoare triple {21418#(<= ~counter~0 2)} assume !(0 == ~cond); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,946 INFO L290 TraceCheckUtils]: 45: Hoare triple {21418#(<= ~counter~0 2)} assume true; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,946 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21418#(<= ~counter~0 2)} {21418#(<= ~counter~0 2)} #90#return; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,947 INFO L272 TraceCheckUtils]: 47: Hoare triple {21418#(<= ~counter~0 2)} 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)); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,947 INFO L290 TraceCheckUtils]: 48: Hoare triple {21418#(<= ~counter~0 2)} ~cond := #in~cond; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,947 INFO L290 TraceCheckUtils]: 49: Hoare triple {21418#(<= ~counter~0 2)} assume !(0 == ~cond); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,947 INFO L290 TraceCheckUtils]: 50: Hoare triple {21418#(<= ~counter~0 2)} assume true; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,948 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21418#(<= ~counter~0 2)} {21418#(<= ~counter~0 2)} #92#return; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,948 INFO L290 TraceCheckUtils]: 52: Hoare triple {21418#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,948 INFO L290 TraceCheckUtils]: 53: Hoare triple {21418#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21418#(<= ~counter~0 2)} is VALID [2022-04-27 12:57:48,949 INFO L290 TraceCheckUtils]: 54: Hoare triple {21418#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:48,949 INFO L290 TraceCheckUtils]: 55: Hoare triple {21491#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:48,949 INFO L290 TraceCheckUtils]: 56: Hoare triple {21491#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:48,950 INFO L290 TraceCheckUtils]: 57: Hoare triple {21491#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,950 INFO L290 TraceCheckUtils]: 58: Hoare triple {21501#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,950 INFO L272 TraceCheckUtils]: 59: Hoare triple {21501#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,951 INFO L290 TraceCheckUtils]: 60: Hoare triple {21501#(<= ~counter~0 4)} ~cond := #in~cond; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,951 INFO L290 TraceCheckUtils]: 61: Hoare triple {21501#(<= ~counter~0 4)} assume !(0 == ~cond); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,951 INFO L290 TraceCheckUtils]: 62: Hoare triple {21501#(<= ~counter~0 4)} assume true; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,952 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21501#(<= ~counter~0 4)} {21501#(<= ~counter~0 4)} #86#return; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,952 INFO L272 TraceCheckUtils]: 64: Hoare triple {21501#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,952 INFO L290 TraceCheckUtils]: 65: Hoare triple {21501#(<= ~counter~0 4)} ~cond := #in~cond; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,953 INFO L290 TraceCheckUtils]: 66: Hoare triple {21501#(<= ~counter~0 4)} assume !(0 == ~cond); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,953 INFO L290 TraceCheckUtils]: 67: Hoare triple {21501#(<= ~counter~0 4)} assume true; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,953 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21501#(<= ~counter~0 4)} {21501#(<= ~counter~0 4)} #88#return; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,954 INFO L272 TraceCheckUtils]: 69: Hoare triple {21501#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,954 INFO L290 TraceCheckUtils]: 70: Hoare triple {21501#(<= ~counter~0 4)} ~cond := #in~cond; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,954 INFO L290 TraceCheckUtils]: 71: Hoare triple {21501#(<= ~counter~0 4)} assume !(0 == ~cond); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,955 INFO L290 TraceCheckUtils]: 72: Hoare triple {21501#(<= ~counter~0 4)} assume true; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,955 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {21501#(<= ~counter~0 4)} {21501#(<= ~counter~0 4)} #90#return; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,956 INFO L272 TraceCheckUtils]: 74: Hoare triple {21501#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,956 INFO L290 TraceCheckUtils]: 75: Hoare triple {21501#(<= ~counter~0 4)} ~cond := #in~cond; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,956 INFO L290 TraceCheckUtils]: 76: Hoare triple {21501#(<= ~counter~0 4)} assume !(0 == ~cond); {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,956 INFO L290 TraceCheckUtils]: 77: Hoare triple {21501#(<= ~counter~0 4)} assume true; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,957 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {21501#(<= ~counter~0 4)} {21501#(<= ~counter~0 4)} #92#return; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,957 INFO L290 TraceCheckUtils]: 79: Hoare triple {21501#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:48,958 INFO L290 TraceCheckUtils]: 80: Hoare triple {21501#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,958 INFO L290 TraceCheckUtils]: 81: Hoare triple {21571#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,958 INFO L272 TraceCheckUtils]: 82: Hoare triple {21571#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,959 INFO L290 TraceCheckUtils]: 83: Hoare triple {21571#(<= ~counter~0 5)} ~cond := #in~cond; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,959 INFO L290 TraceCheckUtils]: 84: Hoare triple {21571#(<= ~counter~0 5)} assume !(0 == ~cond); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,959 INFO L290 TraceCheckUtils]: 85: Hoare triple {21571#(<= ~counter~0 5)} assume true; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,960 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {21571#(<= ~counter~0 5)} {21571#(<= ~counter~0 5)} #86#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,960 INFO L272 TraceCheckUtils]: 87: Hoare triple {21571#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,960 INFO L290 TraceCheckUtils]: 88: Hoare triple {21571#(<= ~counter~0 5)} ~cond := #in~cond; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,960 INFO L290 TraceCheckUtils]: 89: Hoare triple {21571#(<= ~counter~0 5)} assume !(0 == ~cond); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,961 INFO L290 TraceCheckUtils]: 90: Hoare triple {21571#(<= ~counter~0 5)} assume true; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,961 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {21571#(<= ~counter~0 5)} {21571#(<= ~counter~0 5)} #88#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,962 INFO L272 TraceCheckUtils]: 92: Hoare triple {21571#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,962 INFO L290 TraceCheckUtils]: 93: Hoare triple {21571#(<= ~counter~0 5)} ~cond := #in~cond; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,962 INFO L290 TraceCheckUtils]: 94: Hoare triple {21571#(<= ~counter~0 5)} assume !(0 == ~cond); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,962 INFO L290 TraceCheckUtils]: 95: Hoare triple {21571#(<= ~counter~0 5)} assume true; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,963 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {21571#(<= ~counter~0 5)} {21571#(<= ~counter~0 5)} #90#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,964 INFO L272 TraceCheckUtils]: 97: Hoare triple {21571#(<= ~counter~0 5)} 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)); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,964 INFO L290 TraceCheckUtils]: 98: Hoare triple {21571#(<= ~counter~0 5)} ~cond := #in~cond; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,964 INFO L290 TraceCheckUtils]: 99: Hoare triple {21571#(<= ~counter~0 5)} assume !(0 == ~cond); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,964 INFO L290 TraceCheckUtils]: 100: Hoare triple {21571#(<= ~counter~0 5)} assume true; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,965 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {21571#(<= ~counter~0 5)} {21571#(<= ~counter~0 5)} #92#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,965 INFO L290 TraceCheckUtils]: 102: Hoare triple {21571#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,965 INFO L290 TraceCheckUtils]: 103: Hoare triple {21571#(<= ~counter~0 5)} ~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; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:48,966 INFO L290 TraceCheckUtils]: 104: Hoare triple {21571#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21644#(<= ~counter~0 6)} is VALID [2022-04-27 12:57:48,966 INFO L290 TraceCheckUtils]: 105: Hoare triple {21644#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {21644#(<= ~counter~0 6)} is VALID [2022-04-27 12:57:48,966 INFO L290 TraceCheckUtils]: 106: Hoare triple {21644#(<= ~counter~0 6)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21644#(<= ~counter~0 6)} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 107: Hoare triple {21644#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21654#(<= |main_#t~post7| 6)} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 108: Hoare triple {21654#(<= |main_#t~post7| 6)} assume !(#t~post7 < 10);havoc #t~post7; {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 109: Hoare triple {21322#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; {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 110: Hoare triple {21322#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 111: Hoare triple {21322#false} assume !(#t~post6 < 10);havoc #t~post6; {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L272 TraceCheckUtils]: 112: Hoare triple {21322#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 113: Hoare triple {21322#false} ~cond := #in~cond; {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 114: Hoare triple {21322#false} assume 0 == ~cond; {21322#false} is VALID [2022-04-27 12:57:48,967 INFO L290 TraceCheckUtils]: 115: Hoare triple {21322#false} assume !false; {21322#false} is VALID [2022-04-27 12:57:48,968 INFO L134 CoverageAnalysis]: Checked inductivity of 357 backedges. 32 proven. 229 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-27 12:57:48,968 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 12:57:49,380 INFO L290 TraceCheckUtils]: 115: Hoare triple {21322#false} assume !false; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 114: Hoare triple {21322#false} assume 0 == ~cond; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 113: Hoare triple {21322#false} ~cond := #in~cond; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L272 TraceCheckUtils]: 112: Hoare triple {21322#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 111: Hoare triple {21322#false} assume !(#t~post6 < 10);havoc #t~post6; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 110: Hoare triple {21322#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 109: Hoare triple {21322#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; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 108: Hoare triple {21700#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {21322#false} is VALID [2022-04-27 12:57:49,381 INFO L290 TraceCheckUtils]: 107: Hoare triple {21704#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21700#(< |main_#t~post7| 10)} is VALID [2022-04-27 12:57:49,382 INFO L290 TraceCheckUtils]: 106: Hoare triple {21704#(< ~counter~0 10)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21704#(< ~counter~0 10)} is VALID [2022-04-27 12:57:49,382 INFO L290 TraceCheckUtils]: 105: Hoare triple {21704#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {21704#(< ~counter~0 10)} is VALID [2022-04-27 12:57:49,383 INFO L290 TraceCheckUtils]: 104: Hoare triple {21714#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21704#(< ~counter~0 10)} is VALID [2022-04-27 12:57:49,383 INFO L290 TraceCheckUtils]: 103: Hoare triple {21714#(< ~counter~0 9)} ~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; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,383 INFO L290 TraceCheckUtils]: 102: Hoare triple {21714#(< ~counter~0 9)} assume !(~c~0 >= ~b~0); {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,384 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {21321#true} {21714#(< ~counter~0 9)} #92#return; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,384 INFO L290 TraceCheckUtils]: 100: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,384 INFO L290 TraceCheckUtils]: 99: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,384 INFO L290 TraceCheckUtils]: 98: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,384 INFO L272 TraceCheckUtils]: 97: Hoare triple {21714#(< ~counter~0 9)} 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)); {21321#true} is VALID [2022-04-27 12:57:49,384 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {21321#true} {21714#(< ~counter~0 9)} #90#return; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,384 INFO L290 TraceCheckUtils]: 95: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L290 TraceCheckUtils]: 94: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L290 TraceCheckUtils]: 93: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L272 TraceCheckUtils]: 92: Hoare triple {21714#(< ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {21321#true} {21714#(< ~counter~0 9)} #88#return; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,385 INFO L290 TraceCheckUtils]: 90: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L290 TraceCheckUtils]: 89: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L290 TraceCheckUtils]: 88: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,385 INFO L272 TraceCheckUtils]: 87: Hoare triple {21714#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,386 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {21321#true} {21714#(< ~counter~0 9)} #86#return; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,386 INFO L290 TraceCheckUtils]: 85: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,386 INFO L290 TraceCheckUtils]: 84: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,386 INFO L290 TraceCheckUtils]: 83: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,386 INFO L272 TraceCheckUtils]: 82: Hoare triple {21714#(< ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,386 INFO L290 TraceCheckUtils]: 81: Hoare triple {21714#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,387 INFO L290 TraceCheckUtils]: 80: Hoare triple {21787#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21714#(< ~counter~0 9)} is VALID [2022-04-27 12:57:49,387 INFO L290 TraceCheckUtils]: 79: Hoare triple {21787#(< ~counter~0 8)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,388 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {21321#true} {21787#(< ~counter~0 8)} #92#return; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,388 INFO L290 TraceCheckUtils]: 77: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L290 TraceCheckUtils]: 76: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L290 TraceCheckUtils]: 75: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L272 TraceCheckUtils]: 74: Hoare triple {21787#(< ~counter~0 8)} 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)); {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {21321#true} {21787#(< ~counter~0 8)} #90#return; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,388 INFO L290 TraceCheckUtils]: 72: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L290 TraceCheckUtils]: 71: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L290 TraceCheckUtils]: 70: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,388 INFO L272 TraceCheckUtils]: 69: Hoare triple {21787#(< ~counter~0 8)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,389 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {21321#true} {21787#(< ~counter~0 8)} #88#return; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,389 INFO L290 TraceCheckUtils]: 67: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,389 INFO L290 TraceCheckUtils]: 66: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,389 INFO L290 TraceCheckUtils]: 65: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,389 INFO L272 TraceCheckUtils]: 64: Hoare triple {21787#(< ~counter~0 8)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,390 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {21321#true} {21787#(< ~counter~0 8)} #86#return; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,390 INFO L290 TraceCheckUtils]: 62: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,390 INFO L290 TraceCheckUtils]: 61: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,390 INFO L290 TraceCheckUtils]: 60: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,390 INFO L272 TraceCheckUtils]: 59: Hoare triple {21787#(< ~counter~0 8)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,390 INFO L290 TraceCheckUtils]: 58: Hoare triple {21787#(< ~counter~0 8)} assume !!(#t~post7 < 10);havoc #t~post7; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,390 INFO L290 TraceCheckUtils]: 57: Hoare triple {21644#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21787#(< ~counter~0 8)} is VALID [2022-04-27 12:57:49,391 INFO L290 TraceCheckUtils]: 56: Hoare triple {21644#(<= ~counter~0 6)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21644#(<= ~counter~0 6)} is VALID [2022-04-27 12:57:49,391 INFO L290 TraceCheckUtils]: 55: Hoare triple {21644#(<= ~counter~0 6)} assume !!(#t~post6 < 10);havoc #t~post6; {21644#(<= ~counter~0 6)} is VALID [2022-04-27 12:57:49,391 INFO L290 TraceCheckUtils]: 54: Hoare triple {21571#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21644#(<= ~counter~0 6)} is VALID [2022-04-27 12:57:49,392 INFO L290 TraceCheckUtils]: 53: Hoare triple {21571#(<= ~counter~0 5)} ~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; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,392 INFO L290 TraceCheckUtils]: 52: Hoare triple {21571#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,393 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21321#true} {21571#(<= ~counter~0 5)} #92#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,393 INFO L290 TraceCheckUtils]: 50: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L290 TraceCheckUtils]: 49: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L290 TraceCheckUtils]: 48: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L272 TraceCheckUtils]: 47: Hoare triple {21571#(<= ~counter~0 5)} 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)); {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21321#true} {21571#(<= ~counter~0 5)} #90#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,393 INFO L290 TraceCheckUtils]: 45: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L290 TraceCheckUtils]: 44: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,393 INFO L272 TraceCheckUtils]: 42: Hoare triple {21571#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,394 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21321#true} {21571#(<= ~counter~0 5)} #88#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,394 INFO L290 TraceCheckUtils]: 40: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,394 INFO L290 TraceCheckUtils]: 39: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,394 INFO L290 TraceCheckUtils]: 38: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,394 INFO L272 TraceCheckUtils]: 37: Hoare triple {21571#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,395 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21321#true} {21571#(<= ~counter~0 5)} #86#return; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,395 INFO L290 TraceCheckUtils]: 35: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,395 INFO L290 TraceCheckUtils]: 34: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,395 INFO L290 TraceCheckUtils]: 33: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,395 INFO L272 TraceCheckUtils]: 32: Hoare triple {21571#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,395 INFO L290 TraceCheckUtils]: 31: Hoare triple {21571#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,395 INFO L290 TraceCheckUtils]: 30: Hoare triple {21501#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21571#(<= ~counter~0 5)} is VALID [2022-04-27 12:57:49,396 INFO L290 TraceCheckUtils]: 29: Hoare triple {21501#(<= ~counter~0 4)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:49,396 INFO L290 TraceCheckUtils]: 28: Hoare triple {21501#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:49,396 INFO L290 TraceCheckUtils]: 27: Hoare triple {21491#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21501#(<= ~counter~0 4)} is VALID [2022-04-27 12:57:49,397 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {21321#true} {21491#(<= ~counter~0 3)} #84#return; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,397 INFO L290 TraceCheckUtils]: 25: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,397 INFO L290 TraceCheckUtils]: 24: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,397 INFO L290 TraceCheckUtils]: 23: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,397 INFO L272 TraceCheckUtils]: 22: Hoare triple {21491#(<= ~counter~0 3)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,397 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {21321#true} {21491#(<= ~counter~0 3)} #82#return; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,397 INFO L290 TraceCheckUtils]: 20: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,397 INFO L290 TraceCheckUtils]: 19: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,397 INFO L290 TraceCheckUtils]: 18: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,398 INFO L272 TraceCheckUtils]: 17: Hoare triple {21491#(<= ~counter~0 3)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,398 INFO L290 TraceCheckUtils]: 16: Hoare triple {21491#(<= ~counter~0 3)} ~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; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,398 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21321#true} {21491#(<= ~counter~0 3)} #80#return; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,398 INFO L290 TraceCheckUtils]: 14: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,398 INFO L290 TraceCheckUtils]: 13: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,398 INFO L290 TraceCheckUtils]: 12: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,398 INFO L272 TraceCheckUtils]: 11: Hoare triple {21491#(<= ~counter~0 3)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21321#true} {21491#(<= ~counter~0 3)} #78#return; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,399 INFO L290 TraceCheckUtils]: 9: Hoare triple {21321#true} assume true; {21321#true} is VALID [2022-04-27 12:57:49,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {21321#true} assume !(0 == ~cond); {21321#true} is VALID [2022-04-27 12:57:49,399 INFO L290 TraceCheckUtils]: 7: Hoare triple {21321#true} ~cond := #in~cond; {21321#true} is VALID [2022-04-27 12:57:49,399 INFO L272 TraceCheckUtils]: 6: Hoare triple {21491#(<= ~counter~0 3)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21321#true} is VALID [2022-04-27 12:57:49,399 INFO L290 TraceCheckUtils]: 5: Hoare triple {21491#(<= ~counter~0 3)} 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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,399 INFO L272 TraceCheckUtils]: 4: Hoare triple {21491#(<= ~counter~0 3)} call #t~ret8 := main(); {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,400 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21491#(<= ~counter~0 3)} {21321#true} #98#return; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,400 INFO L290 TraceCheckUtils]: 2: Hoare triple {21491#(<= ~counter~0 3)} assume true; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,400 INFO L290 TraceCheckUtils]: 1: Hoare triple {21321#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21491#(<= ~counter~0 3)} is VALID [2022-04-27 12:57:49,400 INFO L272 TraceCheckUtils]: 0: Hoare triple {21321#true} call ULTIMATE.init(); {21321#true} is VALID [2022-04-27 12:57:49,401 INFO L134 CoverageAnalysis]: Checked inductivity of 357 backedges. 32 proven. 37 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-27 12:57:49,401 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 12:57:49,401 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [218179076] [2022-04-27 12:57:49,401 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 12:57:49,401 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [831517452] [2022-04-27 12:57:49,401 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [831517452] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 12:57:49,401 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 12:57:49,401 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 14 [2022-04-27 12:57:49,401 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [556020027] [2022-04-27 12:57:49,401 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 12:57:49,402 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) Word has length 116 [2022-04-27 12:57:49,403 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 12:57:49,403 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) [2022-04-27 12:57:49,504 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:57:49,505 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 12:57:49,505 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 12:57:49,505 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 12:57:49,505 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 12:57:49,505 INFO L87 Difference]: Start difference. First operand 387 states and 487 transitions. Second operand has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) [2022-04-27 12:57:51,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:51,028 INFO L93 Difference]: Finished difference Result 937 states and 1217 transitions. [2022-04-27 12:57:51,028 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-27 12:57:51,029 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) Word has length 116 [2022-04-27 12:57:51,029 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 12:57:51,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) [2022-04-27 12:57:51,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 244 transitions. [2022-04-27 12:57:51,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) [2022-04-27 12:57:51,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 244 transitions. [2022-04-27 12:57:51,032 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 244 transitions. [2022-04-27 12:57:51,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 244 edges. 244 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 12:57:51,238 INFO L225 Difference]: With dead ends: 937 [2022-04-27 12:57:51,238 INFO L226 Difference]: Without dead ends: 804 [2022-04-27 12:57:51,239 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 239 GetRequests, 218 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=165, Invalid=297, Unknown=0, NotChecked=0, Total=462 [2022-04-27 12:57:51,239 INFO L413 NwaCegarLoop]: 74 mSDtfsCounter, 182 mSDsluCounter, 196 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 130 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 182 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 284 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 130 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 12:57:51,239 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [182 Valid, 270 Invalid, 284 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [130 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 12:57:51,240 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 804 states. [2022-04-27 12:57:52,072 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 804 to 778. [2022-04-27 12:57:52,073 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 12:57:52,074 INFO L82 GeneralOperation]: Start isEquivalent. First operand 804 states. Second operand has 778 states, 507 states have (on average 1.1637080867850098) internal successors, (590), 514 states have internal predecessors, (590), 189 states have call successors, (189), 82 states have call predecessors, (189), 81 states have return successors, (184), 181 states have call predecessors, (184), 184 states have call successors, (184) [2022-04-27 12:57:52,074 INFO L74 IsIncluded]: Start isIncluded. First operand 804 states. Second operand has 778 states, 507 states have (on average 1.1637080867850098) internal successors, (590), 514 states have internal predecessors, (590), 189 states have call successors, (189), 82 states have call predecessors, (189), 81 states have return successors, (184), 181 states have call predecessors, (184), 184 states have call successors, (184) [2022-04-27 12:57:52,075 INFO L87 Difference]: Start difference. First operand 804 states. Second operand has 778 states, 507 states have (on average 1.1637080867850098) internal successors, (590), 514 states have internal predecessors, (590), 189 states have call successors, (189), 82 states have call predecessors, (189), 81 states have return successors, (184), 181 states have call predecessors, (184), 184 states have call successors, (184) [2022-04-27 12:57:52,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:52,095 INFO L93 Difference]: Finished difference Result 804 states and 987 transitions. [2022-04-27 12:57:52,095 INFO L276 IsEmpty]: Start isEmpty. Operand 804 states and 987 transitions. [2022-04-27 12:57:52,096 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:57:52,096 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:57:52,097 INFO L74 IsIncluded]: Start isIncluded. First operand has 778 states, 507 states have (on average 1.1637080867850098) internal successors, (590), 514 states have internal predecessors, (590), 189 states have call successors, (189), 82 states have call predecessors, (189), 81 states have return successors, (184), 181 states have call predecessors, (184), 184 states have call successors, (184) Second operand 804 states. [2022-04-27 12:57:52,098 INFO L87 Difference]: Start difference. First operand has 778 states, 507 states have (on average 1.1637080867850098) internal successors, (590), 514 states have internal predecessors, (590), 189 states have call successors, (189), 82 states have call predecessors, (189), 81 states have return successors, (184), 181 states have call predecessors, (184), 184 states have call successors, (184) Second operand 804 states. [2022-04-27 12:57:52,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 12:57:52,118 INFO L93 Difference]: Finished difference Result 804 states and 987 transitions. [2022-04-27 12:57:52,118 INFO L276 IsEmpty]: Start isEmpty. Operand 804 states and 987 transitions. [2022-04-27 12:57:52,119 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 12:57:52,119 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 12:57:52,119 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 12:57:52,119 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 12:57:52,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 778 states, 507 states have (on average 1.1637080867850098) internal successors, (590), 514 states have internal predecessors, (590), 189 states have call successors, (189), 82 states have call predecessors, (189), 81 states have return successors, (184), 181 states have call predecessors, (184), 184 states have call successors, (184) [2022-04-27 12:57:52,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 778 states to 778 states and 963 transitions. [2022-04-27 12:57:52,145 INFO L78 Accepts]: Start accepts. Automaton has 778 states and 963 transitions. Word has length 116 [2022-04-27 12:57:52,145 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 12:57:52,145 INFO L495 AbstractCegarLoop]: Abstraction has 778 states and 963 transitions. [2022-04-27 12:57:52,145 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.928571428571429) internal successors, (69), 14 states have internal predecessors, (69), 9 states have call successors, (36), 7 states have call predecessors, (36), 6 states have return successors, (34), 7 states have call predecessors, (34), 8 states have call successors, (34) [2022-04-27 12:57:52,145 INFO L276 IsEmpty]: Start isEmpty. Operand 778 states and 963 transitions. [2022-04-27 12:57:52,146 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2022-04-27 12:57:52,146 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 12:57:52,146 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 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] [2022-04-27 12:57:52,162 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-27 12:57:52,359 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-27 12:57:52,360 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 12:57:52,360 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 12:57:52,360 INFO L85 PathProgramCache]: Analyzing trace with hash 992936989, now seen corresponding path program 2 times [2022-04-27 12:57:52,360 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 12:57:52,360 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [138559004] [2022-04-27 12:57:52,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 12:57:52,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 12:57:52,374 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 12:57:52,374 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1257183393] [2022-04-27 12:57:52,374 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 12:57:52,374 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 12:57:52,374 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 12:57:52,375 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 12:57:52,376 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-27 12:57:52,442 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 12:57:52,443 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 12:57:52,444 INFO L263 TraceCheckSpWp]: Trace formula consists of 320 conjuncts, 73 conjunts are in the unsatisfiable core [2022-04-27 12:57:52,465 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 12:57:52,467 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 12:58:04,187 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-27 12:58:06,757 INFO L272 TraceCheckUtils]: 0: Hoare triple {26147#true} call ULTIMATE.init(); {26147#true} is VALID [2022-04-27 12:58:06,757 INFO L290 TraceCheckUtils]: 1: Hoare triple {26147#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {26147#true} is VALID [2022-04-27 12:58:06,757 INFO L290 TraceCheckUtils]: 2: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,757 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26147#true} {26147#true} #98#return; {26147#true} is VALID [2022-04-27 12:58:06,757 INFO L272 TraceCheckUtils]: 4: Hoare triple {26147#true} call #t~ret8 := main(); {26147#true} is VALID [2022-04-27 12:58:06,757 INFO L290 TraceCheckUtils]: 5: Hoare triple {26147#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L272 TraceCheckUtils]: 6: Hoare triple {26147#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L290 TraceCheckUtils]: 7: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L290 TraceCheckUtils]: 8: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L290 TraceCheckUtils]: 9: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26147#true} {26147#true} #78#return; {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L272 TraceCheckUtils]: 11: Hoare triple {26147#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {26147#true} is VALID [2022-04-27 12:58:06,758 INFO L290 TraceCheckUtils]: 12: Hoare triple {26147#true} ~cond := #in~cond; {26188#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 12:58:06,758 INFO L290 TraceCheckUtils]: 13: Hoare triple {26188#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {26192#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:58:06,759 INFO L290 TraceCheckUtils]: 14: Hoare triple {26192#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {26192#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 12:58:06,759 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {26192#(not (= |assume_abort_if_not_#in~cond| 0))} {26147#true} #80#return; {26199#(<= 1 main_~y~0)} is VALID [2022-04-27 12:58:06,759 INFO L290 TraceCheckUtils]: 16: Hoare triple {26199#(<= 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; {26203#(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) (<= 1 main_~y~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 12:58:06,759 INFO L272 TraceCheckUtils]: 17: Hoare triple {26203#(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) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L290 TraceCheckUtils]: 18: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L290 TraceCheckUtils]: 19: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L290 TraceCheckUtils]: 20: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {26147#true} {26203#(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) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {26203#(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) (<= 1 main_~y~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 12:58:06,760 INFO L272 TraceCheckUtils]: 22: Hoare triple {26203#(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) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L290 TraceCheckUtils]: 23: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L290 TraceCheckUtils]: 24: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,761 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {26147#true} {26203#(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) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {26203#(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) (<= 1 main_~y~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 12:58:06,761 INFO L290 TraceCheckUtils]: 27: Hoare triple {26203#(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) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26203#(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) (<= 1 main_~y~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 12:58:06,762 INFO L290 TraceCheckUtils]: 28: Hoare triple {26203#(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) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {26203#(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) (<= 1 main_~y~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 12:58:06,762 INFO L290 TraceCheckUtils]: 29: Hoare triple {26203#(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) (<= 1 main_~y~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; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,763 INFO L290 TraceCheckUtils]: 30: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,763 INFO L290 TraceCheckUtils]: 31: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,763 INFO L272 TraceCheckUtils]: 32: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,763 INFO L290 TraceCheckUtils]: 33: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,763 INFO L290 TraceCheckUtils]: 34: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,764 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {26147#true} {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,764 INFO L272 TraceCheckUtils]: 37: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,764 INFO L290 TraceCheckUtils]: 38: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,764 INFO L290 TraceCheckUtils]: 40: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,765 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {26147#true} {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,765 INFO L272 TraceCheckUtils]: 42: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,765 INFO L290 TraceCheckUtils]: 43: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,765 INFO L290 TraceCheckUtils]: 44: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,765 INFO L290 TraceCheckUtils]: 45: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,766 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {26147#true} {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #90#return; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,766 INFO L272 TraceCheckUtils]: 47: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,766 INFO L290 TraceCheckUtils]: 48: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,766 INFO L290 TraceCheckUtils]: 49: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,766 INFO L290 TraceCheckUtils]: 50: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,767 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {26147#true} {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #92#return; {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,768 INFO L290 TraceCheckUtils]: 52: Hoare triple {26243#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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; {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,768 INFO L290 TraceCheckUtils]: 53: Hoare triple {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,769 INFO L290 TraceCheckUtils]: 54: Hoare triple {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,769 INFO L272 TraceCheckUtils]: 55: Hoare triple {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,769 INFO L290 TraceCheckUtils]: 56: Hoare triple {26147#true} ~cond := #in~cond; {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:58:06,769 INFO L290 TraceCheckUtils]: 57: Hoare triple {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,770 INFO L290 TraceCheckUtils]: 58: Hoare triple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,770 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} {26313#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,771 INFO L272 TraceCheckUtils]: 60: Hoare triple {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,771 INFO L290 TraceCheckUtils]: 61: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,771 INFO L290 TraceCheckUtils]: 62: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,771 INFO L290 TraceCheckUtils]: 63: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,771 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {26147#true} {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,771 INFO L272 TraceCheckUtils]: 65: Hoare triple {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L290 TraceCheckUtils]: 66: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L290 TraceCheckUtils]: 67: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L290 TraceCheckUtils]: 68: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {26147#true} {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #90#return; {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,772 INFO L272 TraceCheckUtils]: 70: Hoare triple {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L290 TraceCheckUtils]: 71: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L290 TraceCheckUtils]: 72: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,772 INFO L290 TraceCheckUtils]: 73: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,773 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {26147#true} {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #92#return; {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,775 INFO L290 TraceCheckUtils]: 75: Hoare triple {26337#(and (= main_~r~0 0) (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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; {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,775 INFO L290 TraceCheckUtils]: 76: Hoare triple {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,776 INFO L290 TraceCheckUtils]: 77: Hoare triple {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 10);havoc #t~post7; {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~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 12:58:06,776 INFO L272 TraceCheckUtils]: 78: Hoare triple {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,776 INFO L290 TraceCheckUtils]: 79: Hoare triple {26147#true} ~cond := #in~cond; {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:58:06,777 INFO L290 TraceCheckUtils]: 80: Hoare triple {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,777 INFO L290 TraceCheckUtils]: 81: Hoare triple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,778 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} {26386#(and (= main_~r~0 0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= (+ (div (+ (* (- 1) main_~c~0) main_~a~0 (* (- 1) main_~b~0)) main_~b~0) 1) main_~k~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:58:06,778 INFO L272 TraceCheckUtils]: 83: Hoare triple {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,778 INFO L290 TraceCheckUtils]: 84: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,779 INFO L290 TraceCheckUtils]: 85: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,779 INFO L290 TraceCheckUtils]: 86: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,779 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {26147#true} {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #88#return; {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:58:06,779 INFO L272 TraceCheckUtils]: 88: Hoare triple {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,780 INFO L290 TraceCheckUtils]: 89: Hoare triple {26147#true} ~cond := #in~cond; {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:58:06,780 INFO L290 TraceCheckUtils]: 90: Hoare triple {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,780 INFO L290 TraceCheckUtils]: 91: Hoare triple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,781 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #90#return; {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:58:06,781 INFO L272 TraceCheckUtils]: 93: Hoare triple {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~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)); {26147#true} is VALID [2022-04-27 12:58:06,781 INFO L290 TraceCheckUtils]: 94: Hoare triple {26147#true} ~cond := #in~cond; {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:58:06,781 INFO L290 TraceCheckUtils]: 95: Hoare triple {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,782 INFO L290 TraceCheckUtils]: 96: Hoare triple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,782 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #92#return; {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:58:06,783 INFO L290 TraceCheckUtils]: 98: Hoare triple {26408#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {26457#(and (= main_~r~0 0) (< main_~c~0 main_~y~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= (* main_~y~0 2) (* main_~k~0 main_~y~0)) (= main_~p~0 1))} is VALID [2022-04-27 12:58:06,785 INFO L290 TraceCheckUtils]: 99: Hoare triple {26457#(and (= main_~r~0 0) (< main_~c~0 main_~y~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (= (* main_~y~0 2) (* main_~k~0 main_~y~0)) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,785 INFO L290 TraceCheckUtils]: 100: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,786 INFO L290 TraceCheckUtils]: 101: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 10);havoc #t~post6; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,786 INFO L290 TraceCheckUtils]: 102: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,787 INFO L290 TraceCheckUtils]: 103: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,787 INFO L290 TraceCheckUtils]: 104: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,787 INFO L272 TraceCheckUtils]: 105: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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)); {26147#true} is VALID [2022-04-27 12:58:06,787 INFO L290 TraceCheckUtils]: 106: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,787 INFO L290 TraceCheckUtils]: 107: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,788 INFO L290 TraceCheckUtils]: 108: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,788 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {26147#true} {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,788 INFO L272 TraceCheckUtils]: 110: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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)); {26147#true} is VALID [2022-04-27 12:58:06,788 INFO L290 TraceCheckUtils]: 111: Hoare triple {26147#true} ~cond := #in~cond; {26147#true} is VALID [2022-04-27 12:58:06,788 INFO L290 TraceCheckUtils]: 112: Hoare triple {26147#true} assume !(0 == ~cond); {26147#true} is VALID [2022-04-27 12:58:06,788 INFO L290 TraceCheckUtils]: 113: Hoare triple {26147#true} assume true; {26147#true} is VALID [2022-04-27 12:58:06,789 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {26147#true} {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,789 INFO L272 TraceCheckUtils]: 115: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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)); {26147#true} is VALID [2022-04-27 12:58:06,789 INFO L290 TraceCheckUtils]: 116: Hoare triple {26147#true} ~cond := #in~cond; {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:58:06,790 INFO L290 TraceCheckUtils]: 117: Hoare triple {26326#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,790 INFO L290 TraceCheckUtils]: 118: Hoare triple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 12:58:06,790 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {26330#(not (= |__VERIFIER_assert_#in~cond| 0))} {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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 12:58:06,792 INFO L272 TraceCheckUtils]: 120: Hoare triple {26461#(and (<= 0 (+ main_~x~0 (* main_~y~0 main_~s~0))) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= 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)); {26525#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 12:58:06,793 INFO L290 TraceCheckUtils]: 121: Hoare triple {26525#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {26529#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 12:58:06,793 INFO L290 TraceCheckUtils]: 122: Hoare triple {26529#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {26148#false} is VALID [2022-04-27 12:58:06,793 INFO L290 TraceCheckUtils]: 123: Hoare triple {26148#false} assume !false; {26148#false} is VALID [2022-04-27 12:58:06,794 INFO L134 CoverageAnalysis]: Checked inductivity of 516 backedges. 139 proven. 92 refuted. 0 times theorem prover too weak. 285 trivial. 0 not checked. [2022-04-27 12:58:06,794 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:00:27,150 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:00:27,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [138559004] [2022-04-27 13:00:27,151 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:00:27,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1257183393] [2022-04-27 13:00:27,151 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1257183393] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 13:00:27,151 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:00:27,151 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17] total 17 [2022-04-27 13:00:27,151 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [58938354] [2022-04-27 13:00:27,151 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 13:00:27,152 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) Word has length 124 [2022-04-27 13:00:27,152 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:00:27,152 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) [2022-04-27 13:00:27,241 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:00:27,242 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-27 13:00:27,242 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:00:27,242 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-27 13:00:27,242 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=140, Invalid=510, Unknown=0, NotChecked=0, Total=650 [2022-04-27 13:00:27,242 INFO L87 Difference]: Start difference. First operand 778 states and 963 transitions. Second operand has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) [2022-04-27 13:00:41,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:00:41,945 INFO L93 Difference]: Finished difference Result 843 states and 1038 transitions. [2022-04-27 13:00:41,945 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-27 13:00:41,945 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) Word has length 124 [2022-04-27 13:00:41,946 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:00:41,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) [2022-04-27 13:00:41,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 121 transitions. [2022-04-27 13:00:41,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) [2022-04-27 13:00:41,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 121 transitions. [2022-04-27 13:00:41,950 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 121 transitions. [2022-04-27 13:00:42,106 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:00:42,147 INFO L225 Difference]: With dead ends: 843 [2022-04-27 13:00:42,147 INFO L226 Difference]: Without dead ends: 841 [2022-04-27 13:00:42,147 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 147 SyntacticMatches, 2 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 219 ImplicationChecksByTransitivity, 11.2s TimeCoverageRelationStatistics Valid=187, Invalid=743, Unknown=0, NotChecked=0, Total=930 [2022-04-27 13:00:42,148 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 54 mSDsluCounter, 253 mSDsCounter, 0 mSdLazyCounter, 688 mSolverCounterSat, 66 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 754 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 66 IncrementalHoareTripleChecker+Valid, 688 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.3s IncrementalHoareTripleChecker+Time [2022-04-27 13:00:42,148 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [63 Valid, 301 Invalid, 754 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [66 Valid, 688 Invalid, 0 Unknown, 0 Unchecked, 5.3s Time] [2022-04-27 13:00:42,148 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 841 states. [2022-04-27 13:00:43,106 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 841 to 837. [2022-04-27 13:00:43,106 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:00:43,107 INFO L82 GeneralOperation]: Start isEquivalent. First operand 841 states. Second operand has 837 states, 545 states have (on average 1.1577981651376146) internal successors, (631), 552 states have internal predecessors, (631), 201 states have call successors, (201), 91 states have call predecessors, (201), 90 states have return successors, (196), 193 states have call predecessors, (196), 196 states have call successors, (196) [2022-04-27 13:00:43,108 INFO L74 IsIncluded]: Start isIncluded. First operand 841 states. Second operand has 837 states, 545 states have (on average 1.1577981651376146) internal successors, (631), 552 states have internal predecessors, (631), 201 states have call successors, (201), 91 states have call predecessors, (201), 90 states have return successors, (196), 193 states have call predecessors, (196), 196 states have call successors, (196) [2022-04-27 13:00:43,109 INFO L87 Difference]: Start difference. First operand 841 states. Second operand has 837 states, 545 states have (on average 1.1577981651376146) internal successors, (631), 552 states have internal predecessors, (631), 201 states have call successors, (201), 91 states have call predecessors, (201), 90 states have return successors, (196), 193 states have call predecessors, (196), 196 states have call successors, (196) [2022-04-27 13:00:43,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:00:43,130 INFO L93 Difference]: Finished difference Result 841 states and 1032 transitions. [2022-04-27 13:00:43,130 INFO L276 IsEmpty]: Start isEmpty. Operand 841 states and 1032 transitions. [2022-04-27 13:00:43,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:00:43,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:00:43,132 INFO L74 IsIncluded]: Start isIncluded. First operand has 837 states, 545 states have (on average 1.1577981651376146) internal successors, (631), 552 states have internal predecessors, (631), 201 states have call successors, (201), 91 states have call predecessors, (201), 90 states have return successors, (196), 193 states have call predecessors, (196), 196 states have call successors, (196) Second operand 841 states. [2022-04-27 13:00:43,133 INFO L87 Difference]: Start difference. First operand has 837 states, 545 states have (on average 1.1577981651376146) internal successors, (631), 552 states have internal predecessors, (631), 201 states have call successors, (201), 91 states have call predecessors, (201), 90 states have return successors, (196), 193 states have call predecessors, (196), 196 states have call successors, (196) Second operand 841 states. [2022-04-27 13:00:43,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:00:43,154 INFO L93 Difference]: Finished difference Result 841 states and 1032 transitions. [2022-04-27 13:00:43,154 INFO L276 IsEmpty]: Start isEmpty. Operand 841 states and 1032 transitions. [2022-04-27 13:00:43,156 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:00:43,156 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:00:43,156 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:00:43,156 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:00:43,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 837 states, 545 states have (on average 1.1577981651376146) internal successors, (631), 552 states have internal predecessors, (631), 201 states have call successors, (201), 91 states have call predecessors, (201), 90 states have return successors, (196), 193 states have call predecessors, (196), 196 states have call successors, (196) [2022-04-27 13:00:43,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 837 states to 837 states and 1028 transitions. [2022-04-27 13:00:43,185 INFO L78 Accepts]: Start accepts. Automaton has 837 states and 1028 transitions. Word has length 124 [2022-04-27 13:00:43,185 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:00:43,185 INFO L495 AbstractCegarLoop]: Abstraction has 837 states and 1028 transitions. [2022-04-27 13:00:43,185 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 13 states have internal predecessors, (37), 8 states have call successors, (22), 2 states have call predecessors, (22), 3 states have return successors, (20), 7 states have call predecessors, (20), 8 states have call successors, (20) [2022-04-27 13:00:43,186 INFO L276 IsEmpty]: Start isEmpty. Operand 837 states and 1028 transitions. [2022-04-27 13:00:43,186 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 129 [2022-04-27 13:00:43,186 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:00:43,186 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:00:43,205 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-27 13:00:43,403 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:00:43,403 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:00:43,404 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:00:43,404 INFO L85 PathProgramCache]: Analyzing trace with hash -270396677, now seen corresponding path program 3 times [2022-04-27 13:00:43,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:00:43,404 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [605284313] [2022-04-27 13:00:43,404 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:00:43,404 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:00:43,418 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:00:43,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [341437983] [2022-04-27 13:00:43,418 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:00:43,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:00:43,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:00:43,421 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:00:43,462 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-27 13:00:43,498 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-04-27 13:00:43,498 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:00:43,500 INFO L263 TraceCheckSpWp]: Trace formula consists of 250 conjuncts, 67 conjunts are in the unsatisfiable core [2022-04-27 13:00:43,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:00:43,525 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:00:44,898 INFO L272 TraceCheckUtils]: 0: Hoare triple {30822#true} call ULTIMATE.init(); {30822#true} is VALID [2022-04-27 13:00:44,898 INFO L290 TraceCheckUtils]: 1: Hoare triple {30822#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {30822#true} is VALID [2022-04-27 13:00:44,898 INFO L290 TraceCheckUtils]: 2: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,898 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30822#true} {30822#true} #98#return; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {30822#true} call #t~ret8 := main(); {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 5: Hoare triple {30822#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L272 TraceCheckUtils]: 6: Hoare triple {30822#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 7: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 8: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 9: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30822#true} {30822#true} #78#return; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L272 TraceCheckUtils]: 11: Hoare triple {30822#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 12: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 13: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L290 TraceCheckUtils]: 14: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,899 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30822#true} {30822#true} #80#return; {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L290 TraceCheckUtils]: 16: Hoare triple {30822#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; {30875#(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:00:44,900 INFO L272 TraceCheckUtils]: 17: Hoare triple {30875#(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)); {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L290 TraceCheckUtils]: 18: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30822#true} {30875#(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))} #82#return; {30875#(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:00:44,900 INFO L272 TraceCheckUtils]: 22: Hoare triple {30875#(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)); {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L290 TraceCheckUtils]: 23: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,900 INFO L290 TraceCheckUtils]: 24: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,901 INFO L290 TraceCheckUtils]: 25: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,901 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30822#true} {30875#(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))} #84#return; {30875#(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:00:44,902 INFO L290 TraceCheckUtils]: 27: Hoare triple {30875#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30875#(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:00:44,902 INFO L290 TraceCheckUtils]: 28: Hoare triple {30875#(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 !!(#t~post6 < 10);havoc #t~post6; {30875#(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:00:44,902 INFO L290 TraceCheckUtils]: 29: Hoare triple {30875#(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; {30915#(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:00:44,903 INFO L290 TraceCheckUtils]: 30: Hoare triple {30915#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30915#(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:00:44,903 INFO L290 TraceCheckUtils]: 31: Hoare triple {30915#(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 !!(#t~post7 < 10);havoc #t~post7; {30915#(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:00:44,903 INFO L272 TraceCheckUtils]: 32: Hoare triple {30915#(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)); {30822#true} is VALID [2022-04-27 13:00:44,903 INFO L290 TraceCheckUtils]: 33: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,903 INFO L290 TraceCheckUtils]: 34: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,903 INFO L290 TraceCheckUtils]: 35: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,904 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {30822#true} {30915#(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))} #86#return; {30915#(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:00:44,904 INFO L272 TraceCheckUtils]: 37: Hoare triple {30915#(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)); {30822#true} is VALID [2022-04-27 13:00:44,904 INFO L290 TraceCheckUtils]: 38: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,904 INFO L290 TraceCheckUtils]: 39: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,904 INFO L290 TraceCheckUtils]: 40: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,905 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {30822#true} {30915#(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))} #88#return; {30915#(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:00:44,905 INFO L272 TraceCheckUtils]: 42: Hoare triple {30915#(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)); {30822#true} is VALID [2022-04-27 13:00:44,905 INFO L290 TraceCheckUtils]: 43: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,905 INFO L290 TraceCheckUtils]: 44: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,905 INFO L290 TraceCheckUtils]: 45: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,906 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {30822#true} {30915#(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))} #90#return; {30915#(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:00:44,906 INFO L272 TraceCheckUtils]: 47: Hoare triple {30915#(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)); {30822#true} is VALID [2022-04-27 13:00:44,906 INFO L290 TraceCheckUtils]: 48: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,906 INFO L290 TraceCheckUtils]: 49: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,906 INFO L290 TraceCheckUtils]: 50: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,907 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {30822#true} {30915#(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))} #92#return; {30915#(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:00:44,907 INFO L290 TraceCheckUtils]: 52: Hoare triple {30915#(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); {30915#(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:00:44,908 INFO L290 TraceCheckUtils]: 53: Hoare triple {30915#(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; {30988#(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:00:44,908 INFO L290 TraceCheckUtils]: 54: Hoare triple {30988#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30988#(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:00:44,909 INFO L290 TraceCheckUtils]: 55: Hoare triple {30988#(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 !!(#t~post6 < 10);havoc #t~post6; {30988#(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:00:44,909 INFO L290 TraceCheckUtils]: 56: Hoare triple {30988#(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; {30998#(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:00:44,909 INFO L290 TraceCheckUtils]: 57: Hoare triple {30998#(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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30998#(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:00:44,910 INFO L290 TraceCheckUtils]: 58: Hoare triple {30998#(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 !!(#t~post7 < 10);havoc #t~post7; {30998#(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:00:44,910 INFO L272 TraceCheckUtils]: 59: Hoare triple {30998#(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)); {30822#true} is VALID [2022-04-27 13:00:44,910 INFO L290 TraceCheckUtils]: 60: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,910 INFO L290 TraceCheckUtils]: 61: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,910 INFO L290 TraceCheckUtils]: 62: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,911 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {30822#true} {30998#(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)))} #86#return; {30998#(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:00:44,911 INFO L272 TraceCheckUtils]: 64: Hoare triple {30998#(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)); {30822#true} is VALID [2022-04-27 13:00:44,911 INFO L290 TraceCheckUtils]: 65: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,911 INFO L290 TraceCheckUtils]: 66: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,911 INFO L290 TraceCheckUtils]: 67: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,912 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {30822#true} {30998#(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)))} #88#return; {30998#(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:00:44,912 INFO L272 TraceCheckUtils]: 69: Hoare triple {30998#(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)); {30822#true} is VALID [2022-04-27 13:00:44,912 INFO L290 TraceCheckUtils]: 70: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,912 INFO L290 TraceCheckUtils]: 71: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,912 INFO L290 TraceCheckUtils]: 72: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,912 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {30822#true} {30998#(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)))} #90#return; {30998#(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:00:44,912 INFO L272 TraceCheckUtils]: 74: Hoare triple {30998#(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)); {30822#true} is VALID [2022-04-27 13:00:44,913 INFO L290 TraceCheckUtils]: 75: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,913 INFO L290 TraceCheckUtils]: 76: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,913 INFO L290 TraceCheckUtils]: 77: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,913 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {30822#true} {30998#(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)))} #92#return; {30998#(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:00:44,914 INFO L290 TraceCheckUtils]: 79: Hoare triple {30998#(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; {31068#(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:00:44,914 INFO L290 TraceCheckUtils]: 80: Hoare triple {31068#(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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31068#(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:00:44,915 INFO L290 TraceCheckUtils]: 81: Hoare triple {31068#(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 !!(#t~post7 < 10);havoc #t~post7; {31068#(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:00:44,915 INFO L272 TraceCheckUtils]: 82: Hoare triple {31068#(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)); {30822#true} is VALID [2022-04-27 13:00:44,915 INFO L290 TraceCheckUtils]: 83: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,915 INFO L290 TraceCheckUtils]: 84: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,915 INFO L290 TraceCheckUtils]: 85: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,915 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {30822#true} {31068#(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)))} #86#return; {31068#(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:00:44,916 INFO L272 TraceCheckUtils]: 87: Hoare triple {31068#(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)); {30822#true} is VALID [2022-04-27 13:00:44,920 INFO L290 TraceCheckUtils]: 88: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,920 INFO L290 TraceCheckUtils]: 89: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,920 INFO L290 TraceCheckUtils]: 90: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,921 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {30822#true} {31068#(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)))} #88#return; {31068#(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:00:44,921 INFO L272 TraceCheckUtils]: 92: Hoare triple {31068#(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)); {30822#true} is VALID [2022-04-27 13:00:44,921 INFO L290 TraceCheckUtils]: 93: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,921 INFO L290 TraceCheckUtils]: 94: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,921 INFO L290 TraceCheckUtils]: 95: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,923 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {30822#true} {31068#(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)))} #90#return; {31068#(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:00:44,923 INFO L272 TraceCheckUtils]: 97: Hoare triple {31068#(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)); {30822#true} is VALID [2022-04-27 13:00:44,923 INFO L290 TraceCheckUtils]: 98: Hoare triple {30822#true} ~cond := #in~cond; {31126#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:00:44,923 INFO L290 TraceCheckUtils]: 99: Hoare triple {31126#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:00:44,924 INFO L290 TraceCheckUtils]: 100: Hoare triple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:00:44,925 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} {31068#(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)))} #92#return; {31137#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:00:44,926 INFO L290 TraceCheckUtils]: 102: Hoare triple {31137#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {31137#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 13:00:44,926 INFO L290 TraceCheckUtils]: 103: Hoare triple {31137#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= 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)))} ~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; {31144#(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)))} is VALID [2022-04-27 13:00:44,927 INFO L290 TraceCheckUtils]: 104: Hoare triple {31144#(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)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31144#(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)))} is VALID [2022-04-27 13:00:44,927 INFO L290 TraceCheckUtils]: 105: Hoare triple {31144#(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)))} assume !!(#t~post6 < 10);havoc #t~post6; {31144#(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)))} is VALID [2022-04-27 13:00:44,928 INFO L290 TraceCheckUtils]: 106: Hoare triple {31144#(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)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {31144#(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)))} is VALID [2022-04-27 13:00:44,931 INFO L290 TraceCheckUtils]: 107: Hoare triple {31144#(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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31144#(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)))} is VALID [2022-04-27 13:00:44,932 INFO L290 TraceCheckUtils]: 108: Hoare triple {31144#(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)))} assume !!(#t~post7 < 10);havoc #t~post7; {31144#(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)))} is VALID [2022-04-27 13:00:44,932 INFO L272 TraceCheckUtils]: 109: Hoare triple {31144#(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)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:00:44,932 INFO L290 TraceCheckUtils]: 110: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,932 INFO L290 TraceCheckUtils]: 111: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,932 INFO L290 TraceCheckUtils]: 112: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,932 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {30822#true} {31144#(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)))} #86#return; {31144#(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)))} is VALID [2022-04-27 13:00:44,933 INFO L272 TraceCheckUtils]: 114: Hoare triple {31144#(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)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:00:44,933 INFO L290 TraceCheckUtils]: 115: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:00:44,933 INFO L290 TraceCheckUtils]: 116: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:00:44,933 INFO L290 TraceCheckUtils]: 117: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:00:44,933 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {30822#true} {31144#(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)))} #88#return; {31144#(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)))} is VALID [2022-04-27 13:00:44,933 INFO L272 TraceCheckUtils]: 119: Hoare triple {31144#(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)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:00:44,934 INFO L290 TraceCheckUtils]: 120: Hoare triple {30822#true} ~cond := #in~cond; {31126#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:00:44,934 INFO L290 TraceCheckUtils]: 121: Hoare triple {31126#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:00:44,934 INFO L290 TraceCheckUtils]: 122: Hoare triple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:00:44,935 INFO L284 TraceCheckUtils]: 123: Hoare quadruple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} {31144#(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)))} #90#return; {31144#(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)))} is VALID [2022-04-27 13:00:44,937 INFO L272 TraceCheckUtils]: 124: Hoare triple {31144#(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)))} 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)); {31208#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:00:44,938 INFO L290 TraceCheckUtils]: 125: Hoare triple {31208#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {31212#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:00:44,938 INFO L290 TraceCheckUtils]: 126: Hoare triple {31212#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30823#false} is VALID [2022-04-27 13:00:44,938 INFO L290 TraceCheckUtils]: 127: Hoare triple {30823#false} assume !false; {30823#false} is VALID [2022-04-27 13:00:44,938 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 100 proven. 57 refuted. 0 times theorem prover too weak. 366 trivial. 0 not checked. [2022-04-27 13:00:44,939 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:48,728 INFO L290 TraceCheckUtils]: 127: Hoare triple {30823#false} assume !false; {30823#false} is VALID [2022-04-27 13:02:48,729 INFO L290 TraceCheckUtils]: 126: Hoare triple {31212#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30823#false} is VALID [2022-04-27 13:02:48,729 INFO L290 TraceCheckUtils]: 125: Hoare triple {31208#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {31212#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:48,730 INFO L272 TraceCheckUtils]: 124: Hoare triple {31228#(= (+ (* 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)); {31208#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:48,730 INFO L284 TraceCheckUtils]: 123: Hoare quadruple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} {31232#(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)))))} #90#return; {31228#(= (+ (* 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:02:48,731 INFO L290 TraceCheckUtils]: 122: Hoare triple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:02:48,731 INFO L290 TraceCheckUtils]: 121: Hoare triple {31242#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:02:48,731 INFO L290 TraceCheckUtils]: 120: Hoare triple {30822#true} ~cond := #in~cond; {31242#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:02:48,731 INFO L272 TraceCheckUtils]: 119: Hoare triple {31232#(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)); {30822#true} is VALID [2022-04-27 13:02:48,732 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {30822#true} {31232#(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)))))} #88#return; {31232#(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:02:48,732 INFO L290 TraceCheckUtils]: 117: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:48,732 INFO L290 TraceCheckUtils]: 116: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:48,732 INFO L290 TraceCheckUtils]: 115: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:48,732 INFO L272 TraceCheckUtils]: 114: Hoare triple {31232#(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)); {30822#true} is VALID [2022-04-27 13:02:48,733 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {30822#true} {31232#(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)))))} #86#return; {31232#(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:02:48,733 INFO L290 TraceCheckUtils]: 112: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:48,733 INFO L290 TraceCheckUtils]: 111: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:48,733 INFO L290 TraceCheckUtils]: 110: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:48,733 INFO L272 TraceCheckUtils]: 109: Hoare triple {31232#(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)); {30822#true} is VALID [2022-04-27 13:02:48,733 INFO L290 TraceCheckUtils]: 108: Hoare triple {31232#(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 !!(#t~post7 < 10);havoc #t~post7; {31232#(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:02:48,734 INFO L290 TraceCheckUtils]: 107: Hoare triple {31232#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31232#(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:02:48,734 INFO L290 TraceCheckUtils]: 106: Hoare triple {31232#(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; {31232#(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:02:48,734 INFO L290 TraceCheckUtils]: 105: Hoare triple {31232#(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 !!(#t~post6 < 10);havoc #t~post6; {31232#(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:02:48,735 INFO L290 TraceCheckUtils]: 104: Hoare triple {31232#(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)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31232#(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:02:50,737 WARN L290 TraceCheckUtils]: 103: Hoare triple {31294#(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; {31232#(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:02:50,737 INFO L290 TraceCheckUtils]: 102: Hoare triple {31294#(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); {31294#(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:02:50,739 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} {31301#(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)))} #92#return; {31294#(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:02:50,739 INFO L290 TraceCheckUtils]: 100: Hoare triple {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:02:50,739 INFO L290 TraceCheckUtils]: 99: Hoare triple {31242#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {31130#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:02:50,739 INFO L290 TraceCheckUtils]: 98: Hoare triple {30822#true} ~cond := #in~cond; {31242#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:02:50,739 INFO L272 TraceCheckUtils]: 97: Hoare triple {31301#(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)); {30822#true} is VALID [2022-04-27 13:02:50,740 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {30822#true} {31301#(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)))} #90#return; {31301#(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:02:50,740 INFO L290 TraceCheckUtils]: 95: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:50,740 INFO L290 TraceCheckUtils]: 94: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:50,740 INFO L290 TraceCheckUtils]: 93: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:50,740 INFO L272 TraceCheckUtils]: 92: Hoare triple {31301#(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)); {30822#true} is VALID [2022-04-27 13:02:50,741 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {30822#true} {31301#(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)))} #88#return; {31301#(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:02:50,741 INFO L290 TraceCheckUtils]: 90: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:50,741 INFO L290 TraceCheckUtils]: 89: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:50,741 INFO L290 TraceCheckUtils]: 88: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:50,741 INFO L272 TraceCheckUtils]: 87: Hoare triple {31301#(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)); {30822#true} is VALID [2022-04-27 13:02:50,742 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {30822#true} {31301#(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)))} #86#return; {31301#(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:02:50,742 INFO L290 TraceCheckUtils]: 85: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:50,742 INFO L290 TraceCheckUtils]: 84: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:50,742 INFO L290 TraceCheckUtils]: 83: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:50,742 INFO L272 TraceCheckUtils]: 82: Hoare triple {31301#(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)); {30822#true} is VALID [2022-04-27 13:02:50,743 INFO L290 TraceCheckUtils]: 81: Hoare triple {31301#(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 !!(#t~post7 < 10);havoc #t~post7; {31301#(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:02:50,743 INFO L290 TraceCheckUtils]: 80: Hoare triple {31301#(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)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31301#(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:02:52,746 WARN L290 TraceCheckUtils]: 79: Hoare triple {31368#(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; {31301#(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:02:52,747 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {30822#true} {31368#(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)))))} #92#return; {31368#(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:02:52,747 INFO L290 TraceCheckUtils]: 77: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:52,747 INFO L290 TraceCheckUtils]: 76: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:52,747 INFO L290 TraceCheckUtils]: 75: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:52,747 INFO L272 TraceCheckUtils]: 74: Hoare triple {31368#(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)); {30822#true} is VALID [2022-04-27 13:02:52,748 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {30822#true} {31368#(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)))))} #90#return; {31368#(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:02:52,748 INFO L290 TraceCheckUtils]: 72: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:52,748 INFO L290 TraceCheckUtils]: 71: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:52,748 INFO L290 TraceCheckUtils]: 70: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:52,748 INFO L272 TraceCheckUtils]: 69: Hoare triple {31368#(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)); {30822#true} is VALID [2022-04-27 13:02:52,748 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {30822#true} {31368#(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)))))} #88#return; {31368#(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:02:52,749 INFO L290 TraceCheckUtils]: 67: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:52,749 INFO L290 TraceCheckUtils]: 66: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:52,749 INFO L290 TraceCheckUtils]: 65: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:52,749 INFO L272 TraceCheckUtils]: 64: Hoare triple {31368#(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)); {30822#true} is VALID [2022-04-27 13:02:52,749 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {30822#true} {31368#(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)))))} #86#return; {31368#(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:02:52,749 INFO L290 TraceCheckUtils]: 62: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:52,749 INFO L290 TraceCheckUtils]: 61: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:52,750 INFO L290 TraceCheckUtils]: 60: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:52,750 INFO L272 TraceCheckUtils]: 59: Hoare triple {31368#(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)); {30822#true} is VALID [2022-04-27 13:02:52,750 INFO L290 TraceCheckUtils]: 58: Hoare triple {31368#(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 !!(#t~post7 < 10);havoc #t~post7; {31368#(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:02:52,751 INFO L290 TraceCheckUtils]: 57: Hoare triple {31368#(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)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31368#(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:02:52,752 INFO L290 TraceCheckUtils]: 56: Hoare triple {31438#(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; {31368#(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:02:52,752 INFO L290 TraceCheckUtils]: 55: Hoare triple {31438#(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 !!(#t~post6 < 10);havoc #t~post6; {31438#(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:02:52,753 INFO L290 TraceCheckUtils]: 54: Hoare triple {31438#(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)))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31438#(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:02:54,756 WARN L290 TraceCheckUtils]: 53: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) 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; {31438#(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:02:54,757 INFO L290 TraceCheckUtils]: 52: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} assume !(~c~0 >= ~b~0); {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:54,758 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {30822#true} {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} #92#return; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:54,758 INFO L290 TraceCheckUtils]: 50: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:54,758 INFO L290 TraceCheckUtils]: 49: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:54,758 INFO L290 TraceCheckUtils]: 48: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:54,758 INFO L272 TraceCheckUtils]: 47: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) 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)); {30822#true} is VALID [2022-04-27 13:02:54,759 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {30822#true} {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} #90#return; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:54,759 INFO L290 TraceCheckUtils]: 45: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:54,759 INFO L290 TraceCheckUtils]: 44: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:54,759 INFO L290 TraceCheckUtils]: 43: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:54,759 INFO L272 TraceCheckUtils]: 42: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:54,760 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {30822#true} {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} #88#return; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:54,760 INFO L290 TraceCheckUtils]: 40: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:54,760 INFO L290 TraceCheckUtils]: 39: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:54,760 INFO L290 TraceCheckUtils]: 38: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:54,760 INFO L272 TraceCheckUtils]: 37: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:54,761 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {30822#true} {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} #86#return; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:54,761 INFO L290 TraceCheckUtils]: 35: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:54,761 INFO L290 TraceCheckUtils]: 34: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:54,761 INFO L290 TraceCheckUtils]: 33: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:54,761 INFO L272 TraceCheckUtils]: 32: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:54,762 INFO L290 TraceCheckUtils]: 31: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} assume !!(#t~post7 < 10);havoc #t~post7; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:54,762 INFO L290 TraceCheckUtils]: 30: Hoare triple {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:55,654 INFO L290 TraceCheckUtils]: 29: Hoare triple {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {31448#(or (not (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~yy~0) main_~c~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~xy~0)) (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* main_~c~0 main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~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_~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_~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)) (+ (* (- 1) main_~c~0) main_~b~0))))} is VALID [2022-04-27 13:02:55,655 INFO L290 TraceCheckUtils]: 28: Hoare triple {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 10);havoc #t~post6; {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:02:55,655 INFO L290 TraceCheckUtils]: 27: Hoare triple {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:02:55,656 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {30822#true} {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} #84#return; {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:02:55,656 INFO L290 TraceCheckUtils]: 25: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:55,656 INFO L290 TraceCheckUtils]: 24: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:55,656 INFO L290 TraceCheckUtils]: 23: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:55,656 INFO L272 TraceCheckUtils]: 22: Hoare triple {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:55,657 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {30822#true} {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} #82#return; {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:02:55,657 INFO L290 TraceCheckUtils]: 20: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:55,657 INFO L290 TraceCheckUtils]: 19: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:55,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:55,657 INFO L272 TraceCheckUtils]: 17: Hoare triple {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 16: Hoare triple {30822#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; {31521#(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_~x~0)) main_~a~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) (* main_~r~0 main_~yy~0) (* main_~p~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* (+ (* (- 1) main_~y~0 main_~s~0) (* main_~y~0 main_~r~0) main_~b~0 (* (- 1) main_~q~0 main_~x~0) (* main_~p~0 main_~x~0)) main_~y~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:02:55,659 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30822#true} {30822#true} #80#return; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 14: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 12: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L272 TraceCheckUtils]: 11: Hoare triple {30822#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30822#true} {30822#true} #78#return; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 8: Hoare triple {30822#true} assume !(0 == ~cond); {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 7: Hoare triple {30822#true} ~cond := #in~cond; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L272 TraceCheckUtils]: 6: Hoare triple {30822#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {30822#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;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L272 TraceCheckUtils]: 4: Hoare triple {30822#true} call #t~ret8 := main(); {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30822#true} {30822#true} #98#return; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 2: Hoare triple {30822#true} assume true; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {30822#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {30822#true} is VALID [2022-04-27 13:02:55,659 INFO L272 TraceCheckUtils]: 0: Hoare triple {30822#true} call ULTIMATE.init(); {30822#true} is VALID [2022-04-27 13:02:55,660 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 101 proven. 48 refuted. 8 times theorem prover too weak. 366 trivial. 0 not checked. [2022-04-27 13:02:55,660 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:55,660 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [605284313] [2022-04-27 13:02:55,660 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:55,660 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [341437983] [2022-04-27 13:02:55,661 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [341437983] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:02:55,661 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:02:55,661 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-27 13:02:55,661 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [640754058] [2022-04-27 13:02:55,661 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:55,661 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 3.0) internal successors, (63), 20 states have internal predecessors, (63), 12 states have call successors, (40), 2 states have call predecessors, (40), 2 states have return successors, (37), 14 states have call predecessors, (37), 11 states have call successors, (37) Word has length 128 [2022-04-27 13:02:55,662 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:55,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 3.0) internal successors, (63), 20 states have internal predecessors, (63), 12 states have call successors, (40), 2 states have call predecessors, (40), 2 states have return successors, (37), 14 states have call predecessors, (37), 11 states have call successors, (37) [2022-04-27 13:03:00,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 138 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:00,012 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-27 13:03:00,012 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:00,012 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-27 13:03:00,012 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=352, Unknown=5, NotChecked=0, Total=462 [2022-04-27 13:03:00,013 INFO L87 Difference]: Start difference. First operand 837 states and 1028 transitions. Second operand has 22 states, 21 states have (on average 3.0) internal successors, (63), 20 states have internal predecessors, (63), 12 states have call successors, (40), 2 states have call predecessors, (40), 2 states have return successors, (37), 14 states have call predecessors, (37), 11 states have call successors, (37) [2022-04-27 13:03:02,880 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:03:04,765 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.87s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:03:11,185 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:03:13,209 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:03:31,632 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:03:34,286 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:03:40,198 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:04:13,267 WARN L232 SmtUtils]: Spent 25.79s on a formula simplification that was a NOOP. DAG size: 132 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:04:50,874 WARN L232 SmtUtils]: Spent 31.31s on a formula simplification that was a NOOP. DAG size: 124 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:04:53,016 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:04:54,458 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.33s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:04:58,294 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:06:18,199 WARN L232 SmtUtils]: Spent 1.32m on a formula simplification that was a NOOP. DAG size: 98 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-27 13:06:20,289 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:06:24,181 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:06:29,156 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:06:31,221 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:06:43,801 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:06:47,061 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:06:49,148 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:06:53,132 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:07:07,820 WARN L232 SmtUtils]: Spent 9.99s on a formula simplification that was a NOOP. DAG size: 82 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate)