/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/egcd3-ll_unwindbound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 13:02:51,649 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 13:02:51,652 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 13:02:51,700 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 13:02:51,700 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 13:02:51,701 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 13:02:51,702 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 13:02:51,704 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 13:02:51,705 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 13:02:51,706 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 13:02:51,707 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 13:02:51,713 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 13:02:51,713 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 13:02:51,717 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 13:02:51,718 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 13:02:51,718 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 13:02:51,719 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 13:02:51,720 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 13:02:51,721 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 13:02:51,722 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 13:02:51,723 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 13:02:51,726 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 13:02:51,727 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 13:02:51,730 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 13:02:51,732 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 13:02:51,739 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 13:02:51,739 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 13:02:51,739 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 13:02:51,740 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 13:02:51,740 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 13:02:51,741 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 13:02:51,741 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 13:02:51,742 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 13:02:51,742 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 13:02:51,743 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 13:02:51,743 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 13:02:51,744 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 13:02:51,744 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 13:02:51,744 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 13:02:51,744 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 13:02:51,745 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 13:02:51,751 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 13:02:51,751 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2022-04-27 13:02:51,784 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 13:02:51,784 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 13:02:51,785 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-04-27 13:02:51,785 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-04-27 13:02:51,785 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-27 13:02:51,785 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-27 13:02:51,786 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-27 13:02:51,786 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-27 13:02:51,786 INFO L138 SettingsManager]: * Use SBE=true [2022-04-27 13:02:51,787 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 13:02:51,787 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 13:02:51,787 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 13:02:51,787 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 13:02:51,787 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 13:02:51,787 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 13:02:51,788 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 13:02:51,788 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 13:02:51,789 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 13:02:51,789 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 13:02:51,789 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 13:02:51,789 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 13:02:51,789 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 13:02:51,789 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 13:02:51,789 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:51,790 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-04-27 13:02:51,790 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-04-27 13:02:51,791 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-27 13:02:51,791 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 13:02:52,018 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 13:02:52,044 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 13:02:52,046 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 13:02:52,047 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 13:02:52,048 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 13:02:52,049 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c [2022-04-27 13:02:52,101 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fc5e47375/6b08fcf582ac445799508d863ac8a31d/FLAG6298f85c7 [2022-04-27 13:02:52,486 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 13:02:52,487 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c [2022-04-27 13:02:52,491 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fc5e47375/6b08fcf582ac445799508d863ac8a31d/FLAG6298f85c7 [2022-04-27 13:02:52,902 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fc5e47375/6b08fcf582ac445799508d863ac8a31d [2022-04-27 13:02:52,904 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 13:02:52,905 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-27 13:02:52,907 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:52,907 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 13:02:52,909 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 13:02:52,910 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:52" (1/1) ... [2022-04-27 13:02:52,911 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@422bc548 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:52, skipping insertion in model container [2022-04-27 13:02:52,911 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 01:02:52" (1/1) ... [2022-04-27 13:02:52,920 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 13:02:52,930 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 13:02:53,061 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c[490,503] [2022-04-27 13:02:53,104 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:53,111 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 13:02:53,131 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c[490,503] [2022-04-27 13:02:53,141 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 13:02:53,152 INFO L208 MainTranslator]: Completed translation [2022-04-27 13:02:53,152 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53 WrapperNode [2022-04-27 13:02:53,153 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 13:02:53,153 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 13:02:53,153 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 13:02:53,153 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 13:02:53,162 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,162 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,169 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,169 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,175 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,179 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,180 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,181 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 13:02:53,182 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 13:02:53,182 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 13:02:53,182 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 13:02:53,184 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (1/1) ... [2022-04-27 13:02:53,190 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 13:02:53,198 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:53,207 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 13:02:53,208 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 13:02:53,237 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 13:02:53,238 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 13:02:53,238 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 13:02:53,239 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 13:02:53,239 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 13:02:53,239 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 13:02:53,240 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 13:02:53,240 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 13:02:53,240 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 13:02:53,241 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 13:02:53,241 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 13:02:53,241 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 13:02:53,244 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 13:02:53,244 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 13:02:53,244 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 13:02:53,244 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 13:02:53,244 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 13:02:53,244 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 13:02:53,245 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 13:02:53,245 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 13:02:53,295 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 13:02:53,296 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 13:02:53,544 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 13:02:53,551 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 13:02:53,551 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-27 13:02:53,553 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:53 BoogieIcfgContainer [2022-04-27 13:02:53,553 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 13:02:53,554 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 13:02:53,554 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 13:02:53,557 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 13:02:53,557 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 01:02:52" (1/3) ... [2022-04-27 13:02:53,558 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23299736 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:53, skipping insertion in model container [2022-04-27 13:02:53,558 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 01:02:53" (2/3) ... [2022-04-27 13:02:53,559 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23299736 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 01:02:53, skipping insertion in model container [2022-04-27 13:02:53,559 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 01:02:53" (3/3) ... [2022-04-27 13:02:53,560 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound100.c [2022-04-27 13:02:53,571 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-27 13:02:53,571 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 13:02:53,606 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 13:02:53,611 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@45d38396, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@36b67041 [2022-04-27 13:02:53,612 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 13:02:53,618 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-27 13:02:53,624 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 13:02:53,625 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:53,625 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:53,625 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:53,629 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:53,630 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-27 13:02:53,638 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:53,638 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [97593353] [2022-04-27 13:02:53,639 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:53,639 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:53,725 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,795 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 13:02:53,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-27 13:02:53,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:53,822 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-27 13:02:53,823 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 13:02:53,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,834 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:53,835 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:53,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:53,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-27 13:02:53,837 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-27 13:02:53,839 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:53,844 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:53,844 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:53,844 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:53,845 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-27 13:02:53,846 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 13:02:53,846 INFO L290 TraceCheckUtils]: 1: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-27 13:02:53,846 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-27 13:02:53,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-27 13:02:53,847 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-27 13:02:53,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#true} is VALID [2022-04-27 13:02:53,847 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:53,848 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:53,848 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:53,848 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:53,849 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-27 13:02:53,849 INFO L272 TraceCheckUtils]: 11: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-27 13:02:53,849 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-27 13:02:53,850 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-27 13:02:53,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-27 13:02:53,850 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-27 13:02:53,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-27 13:02:53,851 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-27 13:02:53,851 INFO L272 TraceCheckUtils]: 18: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-27 13:02:53,851 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-27 13:02:53,851 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-27 13:02:53,852 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-27 13:02:53,852 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:53,853 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:53,853 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [97593353] [2022-04-27 13:02:53,853 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [97593353] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:53,854 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:53,854 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 13:02:53,855 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [850202008] [2022-04-27 13:02:53,856 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:53,860 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-27 13:02:53,861 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:53,866 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:53,899 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:53,900 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 13:02:53,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:53,930 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 13:02:53,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:02:53,934 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,153 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-27 13:02:54,153 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 13:02:54,153 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-27 13:02:54,154 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:54,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-27 13:02:54,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,182 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-27 13:02:54,183 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-27 13:02:54,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:54,311 INFO L225 Difference]: With dead ends: 74 [2022-04-27 13:02:54,311 INFO L226 Difference]: Without dead ends: 36 [2022-04-27 13:02:54,314 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 13:02:54,317 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:54,318 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 51 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:02:54,332 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-27 13:02:54,347 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-27 13:02:54,348 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:54,349 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,350 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,353 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,358 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,363 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-27 13:02:54,363 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-27 13:02:54,364 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:54,364 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:54,366 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-27 13:02:54,366 INFO L87 Difference]: Start difference. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-27 13:02:54,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,374 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-27 13:02:54,374 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-27 13:02:54,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:54,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:54,376 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:54,376 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:54,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-27 13:02:54,381 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-27 13:02:54,381 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:54,381 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-27 13:02:54,382 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,382 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-27 13:02:54,383 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 13:02:54,383 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:54,383 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:54,383 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 13:02:54,383 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:54,387 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:54,387 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-27 13:02:54,387 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:54,387 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344365168] [2022-04-27 13:02:54,388 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:54,388 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:54,431 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:54,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [486711606] [2022-04-27 13:02:54,432 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:54,432 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:54,432 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:54,434 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:02:54,435 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 13:02:54,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:54,492 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:02:54,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:54,510 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:54,695 INFO L272 TraceCheckUtils]: 0: Hoare triple {284#true} call ULTIMATE.init(); {284#true} is VALID [2022-04-27 13:02:54,696 INFO L290 TraceCheckUtils]: 1: Hoare triple {284#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; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,696 INFO L290 TraceCheckUtils]: 2: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {292#(<= ~counter~0 0)} {284#true} #108#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,697 INFO L272 TraceCheckUtils]: 4: Hoare triple {292#(<= ~counter~0 0)} call #t~ret9 := main(); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,698 INFO L290 TraceCheckUtils]: 5: Hoare triple {292#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,698 INFO L272 TraceCheckUtils]: 6: Hoare triple {292#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,699 INFO L290 TraceCheckUtils]: 7: Hoare triple {292#(<= ~counter~0 0)} ~cond := #in~cond; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,699 INFO L290 TraceCheckUtils]: 8: Hoare triple {292#(<= ~counter~0 0)} assume !(0 == ~cond); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,700 INFO L290 TraceCheckUtils]: 9: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,701 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {292#(<= ~counter~0 0)} {292#(<= ~counter~0 0)} #94#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,701 INFO L272 TraceCheckUtils]: 11: Hoare triple {292#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,702 INFO L290 TraceCheckUtils]: 12: Hoare triple {292#(<= ~counter~0 0)} ~cond := #in~cond; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,702 INFO L290 TraceCheckUtils]: 13: Hoare triple {292#(<= ~counter~0 0)} assume !(0 == ~cond); {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,703 INFO L290 TraceCheckUtils]: 14: Hoare triple {292#(<= ~counter~0 0)} assume true; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,704 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {292#(<= ~counter~0 0)} {292#(<= ~counter~0 0)} #96#return; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,707 INFO L290 TraceCheckUtils]: 16: Hoare triple {292#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {292#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:54,708 INFO L290 TraceCheckUtils]: 17: Hoare triple {292#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {341#(<= |main_#t~post6| 0)} is VALID [2022-04-27 13:02:54,708 INFO L290 TraceCheckUtils]: 18: Hoare triple {341#(<= |main_#t~post6| 0)} assume !(#t~post6 < 100);havoc #t~post6; {285#false} is VALID [2022-04-27 13:02:54,708 INFO L272 TraceCheckUtils]: 19: Hoare triple {285#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {285#false} is VALID [2022-04-27 13:02:54,709 INFO L290 TraceCheckUtils]: 20: Hoare triple {285#false} ~cond := #in~cond; {285#false} is VALID [2022-04-27 13:02:54,709 INFO L290 TraceCheckUtils]: 21: Hoare triple {285#false} assume 0 == ~cond; {285#false} is VALID [2022-04-27 13:02:54,709 INFO L290 TraceCheckUtils]: 22: Hoare triple {285#false} assume !false; {285#false} is VALID [2022-04-27 13:02:54,709 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:54,709 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:54,710 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:54,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [344365168] [2022-04-27 13:02:54,710 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:54,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [486711606] [2022-04-27 13:02:54,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [486711606] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:54,711 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:54,711 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 13:02:54,712 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [922465563] [2022-04-27 13:02:54,712 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:54,712 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 13:02:54,713 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:54,713 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:54,731 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 13:02:54,731 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:54,732 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 13:02:54,732 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 13:02:54,732 INFO L87 Difference]: Start difference. First operand 35 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,840 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-27 13:02:54,841 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 13:02:54,841 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-27 13:02:54,841 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:54,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,844 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-27 13:02:54,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,846 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-27 13:02:54,846 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-27 13:02:54,890 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 13:02:54,891 INFO L225 Difference]: With dead ends: 44 [2022-04-27 13:02:54,892 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 13:02:54,892 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 13:02:54,893 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:54,894 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 113 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:54,894 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 13:02:54,903 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-27 13:02:54,903 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:54,911 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,913 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,913 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,919 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-27 13:02:54,919 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:02:54,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:54,921 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:54,921 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-27 13:02:54,922 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-27 13:02:54,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:54,930 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-27 13:02:54,931 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:02:54,933 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:54,933 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:54,933 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:54,933 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:54,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:54,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-27 13:02:54,936 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-27 13:02:54,937 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:54,939 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-27 13:02:54,939 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:54,939 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-27 13:02:54,940 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 13:02:54,940 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:54,940 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:54,967 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 13:02:55,165 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:55,165 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:55,166 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:55,166 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-27 13:02:55,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:55,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1595582167] [2022-04-27 13:02:55,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:55,167 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:55,186 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:55,187 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [387457964] [2022-04-27 13:02:55,187 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:55,191 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:55,191 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:55,192 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:02:55,194 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 13:02:55,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:55,234 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:02:55,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:55,242 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:55,332 INFO L272 TraceCheckUtils]: 0: Hoare triple {547#true} call ULTIMATE.init(); {547#true} is VALID [2022-04-27 13:02:55,332 INFO L290 TraceCheckUtils]: 1: Hoare triple {547#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; {547#true} is VALID [2022-04-27 13:02:55,333 INFO L290 TraceCheckUtils]: 2: Hoare triple {547#true} assume true; {547#true} is VALID [2022-04-27 13:02:55,333 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {547#true} {547#true} #108#return; {547#true} is VALID [2022-04-27 13:02:55,333 INFO L272 TraceCheckUtils]: 4: Hoare triple {547#true} call #t~ret9 := main(); {547#true} is VALID [2022-04-27 13:02:55,333 INFO L290 TraceCheckUtils]: 5: Hoare triple {547#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {547#true} is VALID [2022-04-27 13:02:55,333 INFO L272 TraceCheckUtils]: 6: Hoare triple {547#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {547#true} is VALID [2022-04-27 13:02:55,333 INFO L290 TraceCheckUtils]: 7: Hoare triple {547#true} ~cond := #in~cond; {547#true} is VALID [2022-04-27 13:02:55,334 INFO L290 TraceCheckUtils]: 8: Hoare triple {547#true} assume !(0 == ~cond); {547#true} is VALID [2022-04-27 13:02:55,334 INFO L290 TraceCheckUtils]: 9: Hoare triple {547#true} assume true; {547#true} is VALID [2022-04-27 13:02:55,334 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {547#true} {547#true} #94#return; {547#true} is VALID [2022-04-27 13:02:55,334 INFO L272 TraceCheckUtils]: 11: Hoare triple {547#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {547#true} is VALID [2022-04-27 13:02:55,334 INFO L290 TraceCheckUtils]: 12: Hoare triple {547#true} ~cond := #in~cond; {588#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:55,335 INFO L290 TraceCheckUtils]: 13: Hoare triple {588#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {592#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:55,335 INFO L290 TraceCheckUtils]: 14: Hoare triple {592#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {592#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:55,336 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {592#(not (= |assume_abort_if_not_#in~cond| 0))} {547#true} #96#return; {599#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:55,337 INFO L290 TraceCheckUtils]: 16: Hoare triple {599#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:55,337 INFO L290 TraceCheckUtils]: 17: Hoare triple {603#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:55,337 INFO L290 TraceCheckUtils]: 18: Hoare triple {603#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {603#(<= 1 main_~b~0)} is VALID [2022-04-27 13:02:55,338 INFO L290 TraceCheckUtils]: 19: Hoare triple {603#(<= 1 main_~b~0)} assume !(0 != ~b~0); {548#false} is VALID [2022-04-27 13:02:55,338 INFO L272 TraceCheckUtils]: 20: Hoare triple {548#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {548#false} is VALID [2022-04-27 13:02:55,338 INFO L290 TraceCheckUtils]: 21: Hoare triple {548#false} ~cond := #in~cond; {548#false} is VALID [2022-04-27 13:02:55,338 INFO L290 TraceCheckUtils]: 22: Hoare triple {548#false} assume 0 == ~cond; {548#false} is VALID [2022-04-27 13:02:55,338 INFO L290 TraceCheckUtils]: 23: Hoare triple {548#false} assume !false; {548#false} is VALID [2022-04-27 13:02:55,339 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:55,339 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:55,339 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:55,339 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1595582167] [2022-04-27 13:02:55,339 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:55,339 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [387457964] [2022-04-27 13:02:55,339 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [387457964] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:55,340 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:55,340 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:02:55,340 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1983186493] [2022-04-27 13:02:55,340 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:55,340 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-27 13:02:55,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:55,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,359 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 13:02:55,359 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:02:55,359 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:55,360 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:02:55,360 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:02:55,360 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:55,606 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-27 13:02:55,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:02:55,606 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-27 13:02:55,607 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:55,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,610 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-27 13:02:55,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,614 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-27 13:02:55,614 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-27 13:02:55,682 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:55,685 INFO L225 Difference]: With dead ends: 57 [2022-04-27 13:02:55,685 INFO L226 Difference]: Without dead ends: 50 [2022-04-27 13:02:55,686 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-27 13:02:55,689 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 46 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 69 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:55,689 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 148 Invalid, 69 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:02:55,691 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-27 13:02:55,710 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 38. [2022-04-27 13:02:55,710 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:55,710 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:55,710 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:55,711 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:55,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:55,713 INFO L93 Difference]: Finished difference Result 50 states and 68 transitions. [2022-04-27 13:02:55,713 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 68 transitions. [2022-04-27 13:02:55,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:55,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:55,716 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-27 13:02:55,717 INFO L87 Difference]: Start difference. First operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-27 13:02:55,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:55,723 INFO L93 Difference]: Finished difference Result 50 states and 68 transitions. [2022-04-27 13:02:55,723 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 68 transitions. [2022-04-27 13:02:55,724 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:55,724 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:55,724 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:55,724 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:55,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 25 states have (on average 1.28) internal successors, (32), 26 states have internal predecessors, (32), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:55,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 48 transitions. [2022-04-27 13:02:55,727 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 48 transitions. Word has length 24 [2022-04-27 13:02:55,727 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:55,727 INFO L495 AbstractCegarLoop]: Abstraction has 38 states and 48 transitions. [2022-04-27 13:02:55,728 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:55,728 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 48 transitions. [2022-04-27 13:02:55,728 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 13:02:55,728 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:55,728 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:55,754 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-27 13:02:55,950 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 13:02:55,951 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:55,951 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:55,951 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-27 13:02:55,951 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:55,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2052421694] [2022-04-27 13:02:55,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:55,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:55,987 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:55,987 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1607215419] [2022-04-27 13:02:55,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:55,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:55,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:55,989 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:02:56,010 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 13:02:56,057 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:56,058 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:02:56,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:56,072 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:56,211 INFO L272 TraceCheckUtils]: 0: Hoare triple {865#true} call ULTIMATE.init(); {865#true} is VALID [2022-04-27 13:02:56,212 INFO L290 TraceCheckUtils]: 1: Hoare triple {865#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; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,212 INFO L290 TraceCheckUtils]: 2: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,213 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {873#(<= ~counter~0 0)} {865#true} #108#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,213 INFO L272 TraceCheckUtils]: 4: Hoare triple {873#(<= ~counter~0 0)} call #t~ret9 := main(); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {873#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,214 INFO L272 TraceCheckUtils]: 6: Hoare triple {873#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,214 INFO L290 TraceCheckUtils]: 7: Hoare triple {873#(<= ~counter~0 0)} ~cond := #in~cond; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,215 INFO L290 TraceCheckUtils]: 8: Hoare triple {873#(<= ~counter~0 0)} assume !(0 == ~cond); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,215 INFO L290 TraceCheckUtils]: 9: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,216 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {873#(<= ~counter~0 0)} {873#(<= ~counter~0 0)} #94#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,216 INFO L272 TraceCheckUtils]: 11: Hoare triple {873#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,216 INFO L290 TraceCheckUtils]: 12: Hoare triple {873#(<= ~counter~0 0)} ~cond := #in~cond; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,217 INFO L290 TraceCheckUtils]: 13: Hoare triple {873#(<= ~counter~0 0)} assume !(0 == ~cond); {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {873#(<= ~counter~0 0)} assume true; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,218 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {873#(<= ~counter~0 0)} {873#(<= ~counter~0 0)} #96#return; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,218 INFO L290 TraceCheckUtils]: 16: Hoare triple {873#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {873#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:56,218 INFO L290 TraceCheckUtils]: 17: Hoare triple {873#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:56,219 INFO L290 TraceCheckUtils]: 18: Hoare triple {922#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:56,219 INFO L290 TraceCheckUtils]: 19: Hoare triple {922#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {922#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:56,220 INFO L290 TraceCheckUtils]: 20: Hoare triple {922#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {932#(<= |main_#t~post7| 1)} is VALID [2022-04-27 13:02:56,220 INFO L290 TraceCheckUtils]: 21: Hoare triple {932#(<= |main_#t~post7| 1)} assume !(#t~post7 < 100);havoc #t~post7; {866#false} is VALID [2022-04-27 13:02:56,220 INFO L290 TraceCheckUtils]: 22: Hoare triple {866#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; {866#false} is VALID [2022-04-27 13:02:56,220 INFO L290 TraceCheckUtils]: 23: Hoare triple {866#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {866#false} is VALID [2022-04-27 13:02:56,221 INFO L290 TraceCheckUtils]: 24: Hoare triple {866#false} assume !(#t~post6 < 100);havoc #t~post6; {866#false} is VALID [2022-04-27 13:02:56,221 INFO L272 TraceCheckUtils]: 25: Hoare triple {866#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {866#false} is VALID [2022-04-27 13:02:56,221 INFO L290 TraceCheckUtils]: 26: Hoare triple {866#false} ~cond := #in~cond; {866#false} is VALID [2022-04-27 13:02:56,221 INFO L290 TraceCheckUtils]: 27: Hoare triple {866#false} assume 0 == ~cond; {866#false} is VALID [2022-04-27 13:02:56,221 INFO L290 TraceCheckUtils]: 28: Hoare triple {866#false} assume !false; {866#false} is VALID [2022-04-27 13:02:56,221 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:56,221 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:56,222 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:56,222 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2052421694] [2022-04-27 13:02:56,222 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:56,222 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1607215419] [2022-04-27 13:02:56,222 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1607215419] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:56,222 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:56,222 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:02:56,222 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1461516091] [2022-04-27 13:02:56,222 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:56,223 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-27 13:02:56,223 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:56,223 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:56,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:56,242 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:02:56,242 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:56,243 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:02:56,243 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:02:56,243 INFO L87 Difference]: Start difference. First operand 38 states and 48 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:56,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:56,368 INFO L93 Difference]: Finished difference Result 62 states and 82 transitions. [2022-04-27 13:02:56,368 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:02:56,369 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-27 13:02:56,369 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:56,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:56,373 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-27 13:02:56,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:56,374 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-27 13:02:56,375 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-27 13:02:56,435 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:56,438 INFO L225 Difference]: With dead ends: 62 [2022-04-27 13:02:56,438 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 13:02:56,438 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:02:56,441 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:56,443 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 139 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:02:56,443 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 13:02:56,458 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-27 13:02:56,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:56,458 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:56,459 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:56,459 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:56,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:56,460 INFO L93 Difference]: Finished difference Result 40 states and 50 transitions. [2022-04-27 13:02:56,461 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:02:56,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:56,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:56,461 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 40 states. [2022-04-27 13:02:56,462 INFO L87 Difference]: Start difference. First operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 40 states. [2022-04-27 13:02:56,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:56,463 INFO L93 Difference]: Finished difference Result 40 states and 50 transitions. [2022-04-27 13:02:56,463 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:02:56,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:56,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:56,463 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:56,464 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:56,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 13:02:56,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 50 transitions. [2022-04-27 13:02:56,465 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 50 transitions. Word has length 29 [2022-04-27 13:02:56,465 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:56,465 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 50 transitions. [2022-04-27 13:02:56,466 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:02:56,466 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 50 transitions. [2022-04-27 13:02:56,466 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 13:02:56,466 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:56,466 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:56,492 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-27 13:02:56,687 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:56,688 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:56,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:56,688 INFO L85 PathProgramCache]: Analyzing trace with hash 795698770, now seen corresponding path program 1 times [2022-04-27 13:02:56,688 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:56,688 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [956609634] [2022-04-27 13:02:56,689 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:56,689 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:56,716 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:56,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [780855313] [2022-04-27 13:02:56,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:56,716 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:56,716 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:56,717 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:02:56,759 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 13:02:56,776 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:56,777 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:02:56,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:56,794 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:57,208 INFO L272 TraceCheckUtils]: 0: Hoare triple {1183#true} call ULTIMATE.init(); {1183#true} is VALID [2022-04-27 13:02:57,208 INFO L290 TraceCheckUtils]: 1: Hoare triple {1183#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; {1183#true} is VALID [2022-04-27 13:02:57,208 INFO L290 TraceCheckUtils]: 2: Hoare triple {1183#true} assume true; {1183#true} is VALID [2022-04-27 13:02:57,208 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1183#true} {1183#true} #108#return; {1183#true} is VALID [2022-04-27 13:02:57,208 INFO L272 TraceCheckUtils]: 4: Hoare triple {1183#true} call #t~ret9 := main(); {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L290 TraceCheckUtils]: 5: Hoare triple {1183#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L272 TraceCheckUtils]: 6: Hoare triple {1183#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L290 TraceCheckUtils]: 7: Hoare triple {1183#true} ~cond := #in~cond; {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L290 TraceCheckUtils]: 8: Hoare triple {1183#true} assume !(0 == ~cond); {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L290 TraceCheckUtils]: 9: Hoare triple {1183#true} assume true; {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1183#true} {1183#true} #94#return; {1183#true} is VALID [2022-04-27 13:02:57,209 INFO L272 TraceCheckUtils]: 11: Hoare triple {1183#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1183#true} is VALID [2022-04-27 13:02:57,222 INFO L290 TraceCheckUtils]: 12: Hoare triple {1183#true} ~cond := #in~cond; {1224#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:02:57,223 INFO L290 TraceCheckUtils]: 13: Hoare triple {1224#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {1228#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:57,223 INFO L290 TraceCheckUtils]: 14: Hoare triple {1228#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {1228#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:02:57,224 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1228#(not (= |assume_abort_if_not_#in~cond| 0))} {1183#true} #96#return; {1235#(<= 1 main_~y~0)} is VALID [2022-04-27 13:02:57,224 INFO L290 TraceCheckUtils]: 16: Hoare triple {1235#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,225 INFO L290 TraceCheckUtils]: 17: Hoare triple {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,225 INFO L290 TraceCheckUtils]: 18: Hoare triple {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,226 INFO L290 TraceCheckUtils]: 19: Hoare triple {1239#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,226 INFO L290 TraceCheckUtils]: 20: Hoare triple {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,227 INFO L290 TraceCheckUtils]: 21: Hoare triple {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,228 INFO L290 TraceCheckUtils]: 22: Hoare triple {1249#(and (= main_~r~0 0) (<= main_~y~0 main_~b~0) (<= main_~c~0 main_~a~0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,228 INFO L290 TraceCheckUtils]: 23: Hoare triple {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,229 INFO L290 TraceCheckUtils]: 24: Hoare triple {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:02:57,230 INFO L272 TraceCheckUtils]: 25: Hoare triple {1259#(and (= main_~r~0 0) (<= 1 main_~y~0) (<= main_~y~0 main_~a~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)); {1269#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:02:57,230 INFO L290 TraceCheckUtils]: 26: Hoare triple {1269#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1273#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:02:57,230 INFO L290 TraceCheckUtils]: 27: Hoare triple {1273#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1184#false} is VALID [2022-04-27 13:02:57,231 INFO L290 TraceCheckUtils]: 28: Hoare triple {1184#false} assume !false; {1184#false} is VALID [2022-04-27 13:02:57,253 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:02:57,254 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:02:57,254 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:57,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [956609634] [2022-04-27 13:02:57,254 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:57,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [780855313] [2022-04-27 13:02:57,254 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [780855313] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:02:57,254 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:02:57,254 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-27 13:02:57,254 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1657209014] [2022-04-27 13:02:57,254 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:02:57,255 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 29 [2022-04-27 13:02:57,255 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:57,255 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:57,278 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:57,278 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:02:57,278 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:57,279 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:02:57,279 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:57,279 INFO L87 Difference]: Start difference. First operand 40 states and 50 transitions. Second operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:57,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:57,970 INFO L93 Difference]: Finished difference Result 68 states and 92 transitions. [2022-04-27 13:02:57,970 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:02:57,970 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) Word has length 29 [2022-04-27 13:02:57,971 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:57,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:57,973 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 92 transitions. [2022-04-27 13:02:57,974 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:57,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 92 transitions. [2022-04-27 13:02:57,976 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 92 transitions. [2022-04-27 13:02:58,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:58,055 INFO L225 Difference]: With dead ends: 68 [2022-04-27 13:02:58,055 INFO L226 Difference]: Without dead ends: 66 [2022-04-27 13:02:58,056 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:02:58,056 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 67 mSDsluCounter, 197 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 237 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:58,057 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 237 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:02:58,057 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-04-27 13:02:58,093 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 55. [2022-04-27 13:02:58,093 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:58,093 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 13:02:58,094 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 13:02:58,094 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 13:02:58,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:58,097 INFO L93 Difference]: Finished difference Result 66 states and 90 transitions. [2022-04-27 13:02:58,097 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 90 transitions. [2022-04-27 13:02:58,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:58,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:58,098 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 66 states. [2022-04-27 13:02:58,098 INFO L87 Difference]: Start difference. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 66 states. [2022-04-27 13:02:58,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:58,101 INFO L93 Difference]: Finished difference Result 66 states and 90 transitions. [2022-04-27 13:02:58,101 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 90 transitions. [2022-04-27 13:02:58,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:58,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:58,102 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:58,102 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:58,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-27 13:02:58,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-27 13:02:58,104 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-27 13:02:58,104 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:58,104 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-27 13:02:58,105 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.1) internal successors, (21), 8 states have internal predecessors, (21), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:02:58,105 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-27 13:02:58,105 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-27 13:02:58,105 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:58,105 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:58,130 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 13:02:58,327 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:58,328 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:58,328 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:58,328 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-27 13:02:58,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:58,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1719462369] [2022-04-27 13:02:58,328 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:58,328 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:58,348 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:58,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [130115724] [2022-04-27 13:02:58,349 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:58,349 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:58,349 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:58,355 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:02:58,356 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 13:02:58,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:58,408 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:02:58,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:58,419 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:02:58,570 INFO L272 TraceCheckUtils]: 0: Hoare triple {1597#true} call ULTIMATE.init(); {1597#true} is VALID [2022-04-27 13:02:58,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {1597#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; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,571 INFO L290 TraceCheckUtils]: 2: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,572 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1605#(<= ~counter~0 0)} {1597#true} #108#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,572 INFO L272 TraceCheckUtils]: 4: Hoare triple {1605#(<= ~counter~0 0)} call #t~ret9 := main(); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,572 INFO L290 TraceCheckUtils]: 5: Hoare triple {1605#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,573 INFO L272 TraceCheckUtils]: 6: Hoare triple {1605#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,573 INFO L290 TraceCheckUtils]: 7: Hoare triple {1605#(<= ~counter~0 0)} ~cond := #in~cond; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,574 INFO L290 TraceCheckUtils]: 8: Hoare triple {1605#(<= ~counter~0 0)} assume !(0 == ~cond); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,574 INFO L290 TraceCheckUtils]: 9: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,574 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1605#(<= ~counter~0 0)} {1605#(<= ~counter~0 0)} #94#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,575 INFO L272 TraceCheckUtils]: 11: Hoare triple {1605#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,575 INFO L290 TraceCheckUtils]: 12: Hoare triple {1605#(<= ~counter~0 0)} ~cond := #in~cond; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,575 INFO L290 TraceCheckUtils]: 13: Hoare triple {1605#(<= ~counter~0 0)} assume !(0 == ~cond); {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,576 INFO L290 TraceCheckUtils]: 14: Hoare triple {1605#(<= ~counter~0 0)} assume true; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,576 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1605#(<= ~counter~0 0)} {1605#(<= ~counter~0 0)} #96#return; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,576 INFO L290 TraceCheckUtils]: 16: Hoare triple {1605#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1605#(<= ~counter~0 0)} is VALID [2022-04-27 13:02:58,577 INFO L290 TraceCheckUtils]: 17: Hoare triple {1605#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:58,577 INFO L290 TraceCheckUtils]: 18: Hoare triple {1654#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:58,578 INFO L290 TraceCheckUtils]: 19: Hoare triple {1654#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1654#(<= ~counter~0 1)} is VALID [2022-04-27 13:02:58,578 INFO L290 TraceCheckUtils]: 20: Hoare triple {1654#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:58,578 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:58,579 INFO L290 TraceCheckUtils]: 22: Hoare triple {1664#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:58,579 INFO L290 TraceCheckUtils]: 23: Hoare triple {1664#(<= ~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; {1664#(<= ~counter~0 2)} is VALID [2022-04-27 13:02:58,579 INFO L290 TraceCheckUtils]: 24: Hoare triple {1664#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1677#(<= |main_#t~post6| 2)} is VALID [2022-04-27 13:02:58,580 INFO L290 TraceCheckUtils]: 25: Hoare triple {1677#(<= |main_#t~post6| 2)} assume !(#t~post6 < 100);havoc #t~post6; {1598#false} is VALID [2022-04-27 13:02:58,580 INFO L272 TraceCheckUtils]: 26: Hoare triple {1598#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1598#false} is VALID [2022-04-27 13:02:58,580 INFO L290 TraceCheckUtils]: 27: Hoare triple {1598#false} ~cond := #in~cond; {1598#false} is VALID [2022-04-27 13:02:58,580 INFO L290 TraceCheckUtils]: 28: Hoare triple {1598#false} assume 0 == ~cond; {1598#false} is VALID [2022-04-27 13:02:58,580 INFO L290 TraceCheckUtils]: 29: Hoare triple {1598#false} assume !false; {1598#false} is VALID [2022-04-27 13:02:58,581 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:58,581 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:02:58,775 INFO L290 TraceCheckUtils]: 29: Hoare triple {1598#false} assume !false; {1598#false} is VALID [2022-04-27 13:02:58,776 INFO L290 TraceCheckUtils]: 28: Hoare triple {1598#false} assume 0 == ~cond; {1598#false} is VALID [2022-04-27 13:02:58,776 INFO L290 TraceCheckUtils]: 27: Hoare triple {1598#false} ~cond := #in~cond; {1598#false} is VALID [2022-04-27 13:02:58,776 INFO L272 TraceCheckUtils]: 26: Hoare triple {1598#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1598#false} is VALID [2022-04-27 13:02:58,776 INFO L290 TraceCheckUtils]: 25: Hoare triple {1705#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {1598#false} is VALID [2022-04-27 13:02:58,777 INFO L290 TraceCheckUtils]: 24: Hoare triple {1709#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1705#(< |main_#t~post6| 100)} is VALID [2022-04-27 13:02:58,777 INFO L290 TraceCheckUtils]: 23: Hoare triple {1709#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1709#(< ~counter~0 100)} is VALID [2022-04-27 13:02:58,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {1709#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {1709#(< ~counter~0 100)} is VALID [2022-04-27 13:02:58,778 INFO L290 TraceCheckUtils]: 21: Hoare triple {1709#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {1709#(< ~counter~0 100)} is VALID [2022-04-27 13:02:58,779 INFO L290 TraceCheckUtils]: 20: Hoare triple {1722#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1709#(< ~counter~0 100)} is VALID [2022-04-27 13:02:58,779 INFO L290 TraceCheckUtils]: 19: Hoare triple {1722#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1722#(< ~counter~0 99)} is VALID [2022-04-27 13:02:58,779 INFO L290 TraceCheckUtils]: 18: Hoare triple {1722#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {1722#(< ~counter~0 99)} is VALID [2022-04-27 13:02:58,780 INFO L290 TraceCheckUtils]: 17: Hoare triple {1732#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1722#(< ~counter~0 99)} is VALID [2022-04-27 13:02:58,780 INFO L290 TraceCheckUtils]: 16: Hoare triple {1732#(< ~counter~0 98)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,781 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1597#true} {1732#(< ~counter~0 98)} #96#return; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,781 INFO L290 TraceCheckUtils]: 14: Hoare triple {1597#true} assume true; {1597#true} is VALID [2022-04-27 13:02:58,781 INFO L290 TraceCheckUtils]: 13: Hoare triple {1597#true} assume !(0 == ~cond); {1597#true} is VALID [2022-04-27 13:02:58,781 INFO L290 TraceCheckUtils]: 12: Hoare triple {1597#true} ~cond := #in~cond; {1597#true} is VALID [2022-04-27 13:02:58,781 INFO L272 TraceCheckUtils]: 11: Hoare triple {1732#(< ~counter~0 98)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1597#true} is VALID [2022-04-27 13:02:58,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1597#true} {1732#(< ~counter~0 98)} #94#return; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {1597#true} assume true; {1597#true} is VALID [2022-04-27 13:02:58,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {1597#true} assume !(0 == ~cond); {1597#true} is VALID [2022-04-27 13:02:58,782 INFO L290 TraceCheckUtils]: 7: Hoare triple {1597#true} ~cond := #in~cond; {1597#true} is VALID [2022-04-27 13:02:58,782 INFO L272 TraceCheckUtils]: 6: Hoare triple {1732#(< ~counter~0 98)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1597#true} is VALID [2022-04-27 13:02:58,783 INFO L290 TraceCheckUtils]: 5: Hoare triple {1732#(< ~counter~0 98)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,783 INFO L272 TraceCheckUtils]: 4: Hoare triple {1732#(< ~counter~0 98)} call #t~ret9 := main(); {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,784 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1732#(< ~counter~0 98)} {1597#true} #108#return; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,784 INFO L290 TraceCheckUtils]: 2: Hoare triple {1732#(< ~counter~0 98)} assume true; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {1597#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; {1732#(< ~counter~0 98)} is VALID [2022-04-27 13:02:58,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {1597#true} call ULTIMATE.init(); {1597#true} is VALID [2022-04-27 13:02:58,785 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:02:58,785 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:02:58,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1719462369] [2022-04-27 13:02:58,785 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:02:58,785 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [130115724] [2022-04-27 13:02:58,785 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [130115724] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:02:58,786 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:02:58,786 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-27 13:02:58,786 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [195066513] [2022-04-27 13:02:58,786 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:02:58,786 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 30 [2022-04-27 13:02:58,787 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:02:58,787 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:58,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:58,824 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:02:58,824 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:02:58,824 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:02:58,824 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:02:58,824 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:59,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:59,434 INFO L93 Difference]: Finished difference Result 151 states and 197 transitions. [2022-04-27 13:02:59,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-27 13:02:59,435 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 30 [2022-04-27 13:02:59,435 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:02:59,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:59,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 145 transitions. [2022-04-27 13:02:59,438 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:59,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 145 transitions. [2022-04-27 13:02:59,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 145 transitions. [2022-04-27 13:02:59,561 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 145 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:02:59,565 INFO L225 Difference]: With dead ends: 151 [2022-04-27 13:02:59,565 INFO L226 Difference]: Without dead ends: 144 [2022-04-27 13:02:59,565 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=56, Invalid=100, Unknown=0, NotChecked=0, Total=156 [2022-04-27 13:02:59,566 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 132 mSDsluCounter, 204 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 72 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 132 SdHoareTripleChecker+Valid, 257 SdHoareTripleChecker+Invalid, 149 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 72 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:02:59,566 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [132 Valid, 257 Invalid, 149 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [72 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:02:59,567 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-04-27 13:02:59,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 101. [2022-04-27 13:02:59,656 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:02:59,657 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:59,657 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:59,657 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:59,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:59,662 INFO L93 Difference]: Finished difference Result 144 states and 188 transitions. [2022-04-27 13:02:59,662 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 188 transitions. [2022-04-27 13:02:59,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:59,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:59,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 144 states. [2022-04-27 13:02:59,664 INFO L87 Difference]: Start difference. First operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 144 states. [2022-04-27 13:02:59,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:02:59,669 INFO L93 Difference]: Finished difference Result 144 states and 188 transitions. [2022-04-27 13:02:59,669 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 188 transitions. [2022-04-27 13:02:59,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:02:59,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:02:59,670 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:02:59,670 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:02:59,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 70 states have (on average 1.3285714285714285) internal successors, (93), 72 states have internal predecessors, (93), 22 states have call successors, (22), 9 states have call predecessors, (22), 8 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-27 13:02:59,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 134 transitions. [2022-04-27 13:02:59,674 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 134 transitions. Word has length 30 [2022-04-27 13:02:59,674 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:02:59,674 INFO L495 AbstractCegarLoop]: Abstraction has 101 states and 134 transitions. [2022-04-27 13:02:59,674 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.5) internal successors, (35), 10 states have internal predecessors, (35), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:02:59,674 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 134 transitions. [2022-04-27 13:02:59,674 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-27 13:02:59,675 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:02:59,675 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:02:59,701 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-27 13:02:59,891 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:59,891 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:02:59,892 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:02:59,892 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-27 13:02:59,892 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:02:59,892 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [498277900] [2022-04-27 13:02:59,892 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:59,892 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:02:59,908 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:02:59,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [96436968] [2022-04-27 13:02:59,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:02:59,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:02:59,908 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:02:59,909 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:02:59,913 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 13:02:59,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:59,954 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:02:59,965 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:02:59,966 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:00,130 INFO L272 TraceCheckUtils]: 0: Hoare triple {2441#true} call ULTIMATE.init(); {2441#true} is VALID [2022-04-27 13:03:00,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {2441#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; {2441#true} is VALID [2022-04-27 13:03:00,131 INFO L290 TraceCheckUtils]: 2: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:03:00,131 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2441#true} {2441#true} #108#return; {2441#true} is VALID [2022-04-27 13:03:00,131 INFO L272 TraceCheckUtils]: 4: Hoare triple {2441#true} call #t~ret9 := main(); {2441#true} is VALID [2022-04-27 13:03:00,131 INFO L290 TraceCheckUtils]: 5: Hoare triple {2441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2441#true} is VALID [2022-04-27 13:03:00,131 INFO L272 TraceCheckUtils]: 6: Hoare triple {2441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:03:00,132 INFO L290 TraceCheckUtils]: 7: Hoare triple {2441#true} ~cond := #in~cond; {2467#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:03:00,132 INFO L290 TraceCheckUtils]: 8: Hoare triple {2467#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:00,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:00,133 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} {2441#true} #94#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:00,133 INFO L272 TraceCheckUtils]: 11: Hoare triple {2478#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:03:00,134 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#true} ~cond := #in~cond; {2441#true} is VALID [2022-04-27 13:03:00,134 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#true} assume !(0 == ~cond); {2441#true} is VALID [2022-04-27 13:03:00,134 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:03:00,134 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2441#true} {2478#(<= 1 main_~x~0)} #96#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:00,135 INFO L290 TraceCheckUtils]: 16: Hoare triple {2478#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:00,135 INFO L290 TraceCheckUtils]: 17: Hoare triple {2497#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:00,136 INFO L290 TraceCheckUtils]: 18: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:00,136 INFO L290 TraceCheckUtils]: 19: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,137 INFO L290 TraceCheckUtils]: 20: Hoare triple {2507#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,137 INFO L290 TraceCheckUtils]: 21: Hoare triple {2507#(<= 1 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,137 INFO L290 TraceCheckUtils]: 22: Hoare triple {2507#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,138 INFO L290 TraceCheckUtils]: 23: Hoare triple {2507#(<= 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; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:00,138 INFO L290 TraceCheckUtils]: 24: Hoare triple {2520#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:00,139 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:00,139 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2442#false} is VALID [2022-04-27 13:03:00,139 INFO L272 TraceCheckUtils]: 27: Hoare triple {2442#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {2442#false} is VALID [2022-04-27 13:03:00,139 INFO L290 TraceCheckUtils]: 28: Hoare triple {2442#false} ~cond := #in~cond; {2442#false} is VALID [2022-04-27 13:03:00,140 INFO L290 TraceCheckUtils]: 29: Hoare triple {2442#false} assume 0 == ~cond; {2442#false} is VALID [2022-04-27 13:03:00,140 INFO L290 TraceCheckUtils]: 30: Hoare triple {2442#false} assume !false; {2442#false} is VALID [2022-04-27 13:03:00,140 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:03:00,140 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:00,368 INFO L290 TraceCheckUtils]: 30: Hoare triple {2442#false} assume !false; {2442#false} is VALID [2022-04-27 13:03:00,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {2442#false} assume 0 == ~cond; {2442#false} is VALID [2022-04-27 13:03:00,368 INFO L290 TraceCheckUtils]: 28: Hoare triple {2442#false} ~cond := #in~cond; {2442#false} is VALID [2022-04-27 13:03:00,368 INFO L272 TraceCheckUtils]: 27: Hoare triple {2442#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {2442#false} is VALID [2022-04-27 13:03:00,369 INFO L290 TraceCheckUtils]: 26: Hoare triple {2520#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2442#false} is VALID [2022-04-27 13:03:00,369 INFO L290 TraceCheckUtils]: 25: Hoare triple {2520#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:00,369 INFO L290 TraceCheckUtils]: 24: Hoare triple {2520#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:00,370 INFO L290 TraceCheckUtils]: 23: Hoare triple {2507#(<= 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; {2520#(<= 1 main_~b~0)} is VALID [2022-04-27 13:03:00,370 INFO L290 TraceCheckUtils]: 22: Hoare triple {2507#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,371 INFO L290 TraceCheckUtils]: 21: Hoare triple {2507#(<= 1 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,371 INFO L290 TraceCheckUtils]: 20: Hoare triple {2507#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,371 INFO L290 TraceCheckUtils]: 19: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2507#(<= 1 main_~c~0)} is VALID [2022-04-27 13:03:00,372 INFO L290 TraceCheckUtils]: 18: Hoare triple {2497#(<= 1 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:00,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {2497#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:00,373 INFO L290 TraceCheckUtils]: 16: Hoare triple {2478#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2497#(<= 1 main_~a~0)} is VALID [2022-04-27 13:03:00,373 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2441#true} {2478#(<= 1 main_~x~0)} #96#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:00,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:03:00,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {2441#true} assume !(0 == ~cond); {2441#true} is VALID [2022-04-27 13:03:00,373 INFO L290 TraceCheckUtils]: 12: Hoare triple {2441#true} ~cond := #in~cond; {2441#true} is VALID [2022-04-27 13:03:00,374 INFO L272 TraceCheckUtils]: 11: Hoare triple {2478#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:03:00,375 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} {2441#true} #94#return; {2478#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:00,376 INFO L290 TraceCheckUtils]: 9: Hoare triple {2471#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:00,376 INFO L290 TraceCheckUtils]: 8: Hoare triple {2611#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2471#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:00,377 INFO L290 TraceCheckUtils]: 7: Hoare triple {2441#true} ~cond := #in~cond; {2611#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 13:03:00,377 INFO L272 TraceCheckUtils]: 6: Hoare triple {2441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2441#true} is VALID [2022-04-27 13:03:00,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {2441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2441#true} is VALID [2022-04-27 13:03:00,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {2441#true} call #t~ret9 := main(); {2441#true} is VALID [2022-04-27 13:03:00,377 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2441#true} {2441#true} #108#return; {2441#true} is VALID [2022-04-27 13:03:00,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {2441#true} assume true; {2441#true} is VALID [2022-04-27 13:03:00,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {2441#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; {2441#true} is VALID [2022-04-27 13:03:00,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {2441#true} call ULTIMATE.init(); {2441#true} is VALID [2022-04-27 13:03:00,378 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:03:00,378 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:00,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [498277900] [2022-04-27 13:03:00,378 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:00,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [96436968] [2022-04-27 13:03:00,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [96436968] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:00,378 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:00,378 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-27 13:03:00,378 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [880258975] [2022-04-27 13:03:00,379 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:00,379 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-27 13:03:00,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:00,379 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:00,408 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:00,408 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 13:03:00,408 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:00,408 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 13:03:00,408 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-27 13:03:00,409 INFO L87 Difference]: Start difference. First operand 101 states and 134 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:01,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:01,395 INFO L93 Difference]: Finished difference Result 187 states and 265 transitions. [2022-04-27 13:03:01,395 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:03:01,395 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-27 13:03:01,395 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:01,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:01,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-27 13:03:01,398 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:01,401 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-27 13:03:01,402 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-27 13:03:01,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:01,535 INFO L225 Difference]: With dead ends: 187 [2022-04-27 13:03:01,535 INFO L226 Difference]: Without dead ends: 175 [2022-04-27 13:03:01,536 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-27 13:03:01,536 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 113 mSDsluCounter, 293 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 117 SdHoareTripleChecker+Valid, 358 SdHoareTripleChecker+Invalid, 245 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:01,536 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [117 Valid, 358 Invalid, 245 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 182 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:01,537 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 175 states. [2022-04-27 13:03:01,695 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 175 to 132. [2022-04-27 13:03:01,695 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:01,696 INFO L82 GeneralOperation]: Start isEquivalent. First operand 175 states. Second operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:01,696 INFO L74 IsIncluded]: Start isIncluded. First operand 175 states. Second operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:01,696 INFO L87 Difference]: Start difference. First operand 175 states. Second operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:01,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:01,703 INFO L93 Difference]: Finished difference Result 175 states and 251 transitions. [2022-04-27 13:03:01,703 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 251 transitions. [2022-04-27 13:03:01,704 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:01,704 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:01,704 INFO L74 IsIncluded]: Start isIncluded. First operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 175 states. [2022-04-27 13:03:01,705 INFO L87 Difference]: Start difference. First operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 175 states. [2022-04-27 13:03:01,711 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:01,711 INFO L93 Difference]: Finished difference Result 175 states and 251 transitions. [2022-04-27 13:03:01,712 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 251 transitions. [2022-04-27 13:03:01,712 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:01,712 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:01,712 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:01,713 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:01,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 132 states, 98 states have (on average 1.346938775510204) internal successors, (132), 99 states have internal predecessors, (132), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:01,717 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 132 states to 132 states and 180 transitions. [2022-04-27 13:03:01,717 INFO L78 Accepts]: Start accepts. Automaton has 132 states and 180 transitions. Word has length 31 [2022-04-27 13:03:01,717 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:01,717 INFO L495 AbstractCegarLoop]: Abstraction has 132 states and 180 transitions. [2022-04-27 13:03:01,718 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:01,718 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 180 transitions. [2022-04-27 13:03:01,718 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-27 13:03:01,718 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:01,718 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:01,746 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:01,940 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:01,941 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:01,941 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:01,941 INFO L85 PathProgramCache]: Analyzing trace with hash 495607521, now seen corresponding path program 1 times [2022-04-27 13:03:01,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:01,942 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1235451669] [2022-04-27 13:03:01,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:01,942 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:01,958 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:01,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1444848334] [2022-04-27 13:03:01,958 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:01,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:01,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:01,959 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:01,972 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 13:03:02,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:02,001 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:03:02,010 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:02,011 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:02,408 INFO L272 TraceCheckUtils]: 0: Hoare triple {3457#true} call ULTIMATE.init(); {3457#true} is VALID [2022-04-27 13:03:02,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {3457#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; {3457#true} is VALID [2022-04-27 13:03:02,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:03:02,408 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3457#true} {3457#true} #108#return; {3457#true} is VALID [2022-04-27 13:03:02,408 INFO L272 TraceCheckUtils]: 4: Hoare triple {3457#true} call #t~ret9 := main(); {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L290 TraceCheckUtils]: 5: Hoare triple {3457#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L272 TraceCheckUtils]: 6: Hoare triple {3457#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L290 TraceCheckUtils]: 7: Hoare triple {3457#true} ~cond := #in~cond; {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L290 TraceCheckUtils]: 8: Hoare triple {3457#true} assume !(0 == ~cond); {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L290 TraceCheckUtils]: 9: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3457#true} {3457#true} #94#return; {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L272 TraceCheckUtils]: 11: Hoare triple {3457#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3457#true} is VALID [2022-04-27 13:03:02,409 INFO L290 TraceCheckUtils]: 12: Hoare triple {3457#true} ~cond := #in~cond; {3498#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:03:02,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {3498#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3502#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:02,410 INFO L290 TraceCheckUtils]: 14: Hoare triple {3502#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3502#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:02,411 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3502#(not (= |assume_abort_if_not_#in~cond| 0))} {3457#true} #96#return; {3509#(<= 1 main_~y~0)} is VALID [2022-04-27 13:03:02,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {3509#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,412 INFO L290 TraceCheckUtils]: 17: Hoare triple {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,412 INFO L290 TraceCheckUtils]: 18: Hoare triple {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,413 INFO L290 TraceCheckUtils]: 19: Hoare triple {3513#(and (= main_~s~0 1) (<= main_~a~0 main_~x~0) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,413 INFO L290 TraceCheckUtils]: 20: Hoare triple {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,414 INFO L290 TraceCheckUtils]: 21: Hoare triple {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post7 < 100);havoc #t~post7; {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,415 INFO L290 TraceCheckUtils]: 22: Hoare triple {3523#(and (<= main_~c~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,415 INFO L290 TraceCheckUtils]: 23: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} assume !!(#t~post8 < 100);havoc #t~post8; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,416 INFO L272 TraceCheckUtils]: 25: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~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)); {3457#true} is VALID [2022-04-27 13:03:02,416 INFO L290 TraceCheckUtils]: 26: Hoare triple {3457#true} ~cond := #in~cond; {3457#true} is VALID [2022-04-27 13:03:02,416 INFO L290 TraceCheckUtils]: 27: Hoare triple {3457#true} assume !(0 == ~cond); {3457#true} is VALID [2022-04-27 13:03:02,416 INFO L290 TraceCheckUtils]: 28: Hoare triple {3457#true} assume true; {3457#true} is VALID [2022-04-27 13:03:02,418 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {3457#true} {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} #98#return; {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-27 13:03:02,419 INFO L272 TraceCheckUtils]: 30: Hoare triple {3533#(and (<= main_~b~0 main_~x~0) (= main_~s~0 1) (= main_~b~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)); {3558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:02,420 INFO L290 TraceCheckUtils]: 31: Hoare triple {3558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:02,420 INFO L290 TraceCheckUtils]: 32: Hoare triple {3562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3458#false} is VALID [2022-04-27 13:03:02,420 INFO L290 TraceCheckUtils]: 33: Hoare triple {3458#false} assume !false; {3458#false} is VALID [2022-04-27 13:03:02,420 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:03:02,420 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:02,421 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:02,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1235451669] [2022-04-27 13:03:02,421 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:02,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1444848334] [2022-04-27 13:03:02,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1444848334] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:02,421 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:02,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-27 13:03:02,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1327711673] [2022-04-27 13:03:02,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:02,422 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 34 [2022-04-27 13:03:02,422 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:02,422 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 13:03:02,452 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:02,452 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:03:02,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:02,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:03:02,453 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:03:02,453 INFO L87 Difference]: Start difference. First operand 132 states and 180 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 13:03:03,311 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:03,311 INFO L93 Difference]: Finished difference Result 157 states and 210 transitions. [2022-04-27 13:03:03,311 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 13:03:03,311 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 34 [2022-04-27 13:03:03,312 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:03,312 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 13:03:03,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 93 transitions. [2022-04-27 13:03:03,314 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 13:03:03,315 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 93 transitions. [2022-04-27 13:03:03,315 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 93 transitions. [2022-04-27 13:03:03,401 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:03,405 INFO L225 Difference]: With dead ends: 157 [2022-04-27 13:03:03,405 INFO L226 Difference]: Without dead ends: 155 [2022-04-27 13:03:03,406 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-04-27 13:03:03,406 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 80 mSDsluCounter, 198 mSDsCounter, 0 mSdLazyCounter, 186 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 241 SdHoareTripleChecker+Invalid, 214 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:03,406 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 241 Invalid, 214 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 186 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:03,407 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 155 states. [2022-04-27 13:03:03,598 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 155 to 144. [2022-04-27 13:03:03,598 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:03,599 INFO L82 GeneralOperation]: Start isEquivalent. First operand 155 states. Second operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:03,599 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:03,600 INFO L87 Difference]: Start difference. First operand 155 states. Second operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:03,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:03,605 INFO L93 Difference]: Finished difference Result 155 states and 206 transitions. [2022-04-27 13:03:03,605 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 206 transitions. [2022-04-27 13:03:03,605 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:03,605 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:03,606 INFO L74 IsIncluded]: Start isIncluded. First operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 155 states. [2022-04-27 13:03:03,606 INFO L87 Difference]: Start difference. First operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) Second operand 155 states. [2022-04-27 13:03:03,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:03,611 INFO L93 Difference]: Finished difference Result 155 states and 206 transitions. [2022-04-27 13:03:03,611 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 206 transitions. [2022-04-27 13:03:03,611 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:03,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:03,611 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:03,611 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:03,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 144 states, 107 states have (on average 1.3177570093457944) internal successors, (141), 108 states have internal predecessors, (141), 25 states have call successors, (25), 12 states have call predecessors, (25), 11 states have return successors, (23), 23 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-27 13:03:03,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 189 transitions. [2022-04-27 13:03:03,616 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 189 transitions. Word has length 34 [2022-04-27 13:03:03,616 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:03,616 INFO L495 AbstractCegarLoop]: Abstraction has 144 states and 189 transitions. [2022-04-27 13:03:03,617 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, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-27 13:03:03,617 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 189 transitions. [2022-04-27 13:03:03,618 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 13:03:03,618 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:03,618 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:03,643 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:03,835 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:03,836 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:03,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:03,836 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-27 13:03:03,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:03,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1319468690] [2022-04-27 13:03:03,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:03,836 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:03,851 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:03,851 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1829926178] [2022-04-27 13:03:03,851 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:03,851 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:03,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:03,854 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:03,854 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-27 13:03:03,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:03,896 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 13:03:03,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:03,906 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:04,231 INFO L272 TraceCheckUtils]: 0: Hoare triple {4310#true} call ULTIMATE.init(); {4310#true} is VALID [2022-04-27 13:03:04,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {4310#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; {4310#true} is VALID [2022-04-27 13:03:04,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:04,231 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4310#true} {4310#true} #108#return; {4310#true} is VALID [2022-04-27 13:03:04,231 INFO L272 TraceCheckUtils]: 4: Hoare triple {4310#true} call #t~ret9 := main(); {4310#true} is VALID [2022-04-27 13:03:04,231 INFO L290 TraceCheckUtils]: 5: Hoare triple {4310#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4310#true} is VALID [2022-04-27 13:03:04,231 INFO L272 TraceCheckUtils]: 6: Hoare triple {4310#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:04,232 INFO L290 TraceCheckUtils]: 7: Hoare triple {4310#true} ~cond := #in~cond; {4336#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:03:04,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {4336#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4340#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:04,233 INFO L290 TraceCheckUtils]: 9: Hoare triple {4340#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4340#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:03:04,234 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4340#(not (= |assume_abort_if_not_#in~cond| 0))} {4310#true} #94#return; {4347#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:04,234 INFO L272 TraceCheckUtils]: 11: Hoare triple {4347#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:04,234 INFO L290 TraceCheckUtils]: 12: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:03:04,235 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:03:04,235 INFO L290 TraceCheckUtils]: 14: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:04,235 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4310#true} {4347#(<= 1 main_~x~0)} #96#return; {4347#(<= 1 main_~x~0)} is VALID [2022-04-27 13:03:04,236 INFO L290 TraceCheckUtils]: 16: Hoare triple {4347#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,236 INFO L290 TraceCheckUtils]: 17: Hoare triple {4366#(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; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,236 INFO L290 TraceCheckUtils]: 18: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 100);havoc #t~post6; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,237 INFO L290 TraceCheckUtils]: 19: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,237 INFO L290 TraceCheckUtils]: 20: Hoare triple {4366#(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; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,238 INFO L290 TraceCheckUtils]: 21: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,238 INFO L290 TraceCheckUtils]: 22: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-27 13:03:04,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {4366#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,239 INFO L290 TraceCheckUtils]: 24: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,239 INFO L290 TraceCheckUtils]: 25: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,240 INFO L290 TraceCheckUtils]: 26: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,240 INFO L290 TraceCheckUtils]: 27: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,241 INFO L290 TraceCheckUtils]: 28: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 100);havoc #t~post7; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,241 INFO L290 TraceCheckUtils]: 29: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,242 INFO L290 TraceCheckUtils]: 30: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,242 INFO L290 TraceCheckUtils]: 31: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 100);havoc #t~post8; {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:04,243 INFO L272 TraceCheckUtils]: 32: Hoare triple {4388#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:04,243 INFO L290 TraceCheckUtils]: 33: Hoare triple {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4420#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:04,243 INFO L290 TraceCheckUtils]: 34: Hoare triple {4420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4311#false} is VALID [2022-04-27 13:03:04,244 INFO L290 TraceCheckUtils]: 35: Hoare triple {4311#false} assume !false; {4311#false} is VALID [2022-04-27 13:03:04,244 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-27 13:03:04,244 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:04,459 INFO L290 TraceCheckUtils]: 35: Hoare triple {4311#false} assume !false; {4311#false} is VALID [2022-04-27 13:03:04,460 INFO L290 TraceCheckUtils]: 34: Hoare triple {4420#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4311#false} is VALID [2022-04-27 13:03:04,460 INFO L290 TraceCheckUtils]: 33: Hoare triple {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4420#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:04,461 INFO L272 TraceCheckUtils]: 32: Hoare triple {4436#(= 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)); {4416#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:04,461 INFO L290 TraceCheckUtils]: 31: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,462 INFO L290 TraceCheckUtils]: 30: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,462 INFO L290 TraceCheckUtils]: 29: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,467 INFO L290 TraceCheckUtils]: 28: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,468 INFO L290 TraceCheckUtils]: 27: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,468 INFO L290 TraceCheckUtils]: 26: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,469 INFO L290 TraceCheckUtils]: 24: Hoare triple {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,469 INFO L290 TraceCheckUtils]: 23: Hoare triple {4464#(= 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; {4436#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:04,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,470 INFO L290 TraceCheckUtils]: 21: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,471 INFO L290 TraceCheckUtils]: 20: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,471 INFO L290 TraceCheckUtils]: 19: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,471 INFO L290 TraceCheckUtils]: 18: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,472 INFO L290 TraceCheckUtils]: 17: Hoare triple {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,472 INFO L290 TraceCheckUtils]: 16: Hoare triple {4310#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4464#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:04,472 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4310#true} {4310#true} #96#return; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 14: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 12: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L272 TraceCheckUtils]: 11: Hoare triple {4310#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4310#true} {4310#true} #94#return; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 9: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 8: Hoare triple {4310#true} assume !(0 == ~cond); {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 7: Hoare triple {4310#true} ~cond := #in~cond; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L272 TraceCheckUtils]: 6: Hoare triple {4310#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L290 TraceCheckUtils]: 5: Hoare triple {4310#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L272 TraceCheckUtils]: 4: Hoare triple {4310#true} call #t~ret9 := main(); {4310#true} is VALID [2022-04-27 13:03:04,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4310#true} {4310#true} #108#return; {4310#true} is VALID [2022-04-27 13:03:04,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {4310#true} assume true; {4310#true} is VALID [2022-04-27 13:03:04,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {4310#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; {4310#true} is VALID [2022-04-27 13:03:04,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {4310#true} call ULTIMATE.init(); {4310#true} is VALID [2022-04-27 13:03:04,474 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:04,474 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:04,474 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1319468690] [2022-04-27 13:03:04,474 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:04,474 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1829926178] [2022-04-27 13:03:04,474 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1829926178] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:04,474 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:04,474 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-27 13:03:04,476 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1571358964] [2022-04-27 13:03:04,477 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:04,478 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 36 [2022-04-27 13:03:04,478 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:04,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 13:03:04,517 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 13:03:04,517 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 13:03:04,517 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:04,517 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 13:03:04,517 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:03:04,517 INFO L87 Difference]: Start difference. First operand 144 states and 189 transitions. Second operand has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 13:03:05,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:05,346 INFO L93 Difference]: Finished difference Result 179 states and 241 transitions. [2022-04-27 13:03:05,346 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 13:03:05,346 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 36 [2022-04-27 13:03:05,347 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:05,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 13:03:05,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-27 13:03:05,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 13:03:05,350 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-27 13:03:05,350 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-27 13:03:05,436 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:05,440 INFO L225 Difference]: With dead ends: 179 [2022-04-27 13:03:05,440 INFO L226 Difference]: Without dead ends: 177 [2022-04-27 13:03:05,440 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=145, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:03:05,441 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 76 mSDsluCounter, 278 mSDsCounter, 0 mSdLazyCounter, 206 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 336 SdHoareTripleChecker+Invalid, 226 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 206 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:05,441 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 336 Invalid, 226 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 206 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:05,442 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 177 states. [2022-04-27 13:03:05,654 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 177 to 174. [2022-04-27 13:03:05,654 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:05,656 INFO L82 GeneralOperation]: Start isEquivalent. First operand 177 states. Second operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:05,657 INFO L74 IsIncluded]: Start isIncluded. First operand 177 states. Second operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:05,657 INFO L87 Difference]: Start difference. First operand 177 states. Second operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:05,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:05,662 INFO L93 Difference]: Finished difference Result 177 states and 239 transitions. [2022-04-27 13:03:05,662 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 239 transitions. [2022-04-27 13:03:05,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:05,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:05,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 177 states. [2022-04-27 13:03:05,663 INFO L87 Difference]: Start difference. First operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 177 states. [2022-04-27 13:03:05,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:05,667 INFO L93 Difference]: Finished difference Result 177 states and 239 transitions. [2022-04-27 13:03:05,667 INFO L276 IsEmpty]: Start isEmpty. Operand 177 states and 239 transitions. [2022-04-27 13:03:05,668 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:05,668 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:05,668 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:05,668 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:05,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 128 states have (on average 1.34375) internal successors, (172), 129 states have internal predecessors, (172), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:05,674 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 236 transitions. [2022-04-27 13:03:05,674 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 236 transitions. Word has length 36 [2022-04-27 13:03:05,674 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:05,675 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 236 transitions. [2022-04-27 13:03:05,675 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 4.0) internal successors, (44), 9 states have internal predecessors, (44), 4 states have call successors, (7), 2 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 13:03:05,675 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 236 transitions. [2022-04-27 13:03:05,675 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 13:03:05,675 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:05,675 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:05,701 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:05,895 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-27 13:03:05,896 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:05,896 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:05,896 INFO L85 PathProgramCache]: Analyzing trace with hash -892181054, now seen corresponding path program 1 times [2022-04-27 13:03:05,896 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:05,896 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1634466904] [2022-04-27 13:03:05,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:05,896 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:05,912 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:05,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [13991946] [2022-04-27 13:03:05,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:05,912 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:05,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:05,913 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:05,923 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-27 13:03:05,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:05,969 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-27 13:03:05,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:05,979 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:06,156 INFO L272 TraceCheckUtils]: 0: Hoare triple {5394#true} call ULTIMATE.init(); {5394#true} is VALID [2022-04-27 13:03:06,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {5394#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; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,158 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5402#(<= ~counter~0 0)} {5394#true} #108#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {5402#(<= ~counter~0 0)} call #t~ret9 := main(); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,159 INFO L290 TraceCheckUtils]: 5: Hoare triple {5402#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,159 INFO L272 TraceCheckUtils]: 6: Hoare triple {5402#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,159 INFO L290 TraceCheckUtils]: 7: Hoare triple {5402#(<= ~counter~0 0)} ~cond := #in~cond; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {5402#(<= ~counter~0 0)} assume !(0 == ~cond); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,164 INFO L290 TraceCheckUtils]: 9: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,168 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5402#(<= ~counter~0 0)} {5402#(<= ~counter~0 0)} #94#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,174 INFO L272 TraceCheckUtils]: 11: Hoare triple {5402#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,174 INFO L290 TraceCheckUtils]: 12: Hoare triple {5402#(<= ~counter~0 0)} ~cond := #in~cond; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,175 INFO L290 TraceCheckUtils]: 13: Hoare triple {5402#(<= ~counter~0 0)} assume !(0 == ~cond); {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,176 INFO L290 TraceCheckUtils]: 14: Hoare triple {5402#(<= ~counter~0 0)} assume true; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,177 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5402#(<= ~counter~0 0)} {5402#(<= ~counter~0 0)} #96#return; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,177 INFO L290 TraceCheckUtils]: 16: Hoare triple {5402#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5402#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:06,178 INFO L290 TraceCheckUtils]: 17: Hoare triple {5402#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:06,178 INFO L290 TraceCheckUtils]: 18: Hoare triple {5451#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:06,178 INFO L290 TraceCheckUtils]: 19: Hoare triple {5451#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5451#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:06,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {5451#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:06,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {5461#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:06,180 INFO L290 TraceCheckUtils]: 22: Hoare triple {5461#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {5461#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:06,180 INFO L290 TraceCheckUtils]: 23: Hoare triple {5461#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {5471#(<= |main_#t~post8| 2)} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 24: Hoare triple {5471#(<= |main_#t~post8| 2)} assume !(#t~post8 < 100);havoc #t~post8; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 25: Hoare triple {5395#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 26: Hoare triple {5395#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 27: Hoare triple {5395#false} assume !(#t~post7 < 100);havoc #t~post7; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 28: Hoare triple {5395#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; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 29: Hoare triple {5395#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 30: Hoare triple {5395#false} assume !!(#t~post6 < 100);havoc #t~post6; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 31: Hoare triple {5395#false} assume !(0 != ~b~0); {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L272 TraceCheckUtils]: 32: Hoare triple {5395#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 33: Hoare triple {5395#false} ~cond := #in~cond; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 34: Hoare triple {5395#false} assume 0 == ~cond; {5395#false} is VALID [2022-04-27 13:03:06,181 INFO L290 TraceCheckUtils]: 35: Hoare triple {5395#false} assume !false; {5395#false} is VALID [2022-04-27 13:03:06,182 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:06,182 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:06,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:06,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1634466904] [2022-04-27 13:03:06,182 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:06,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [13991946] [2022-04-27 13:03:06,182 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [13991946] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:06,182 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:06,182 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-27 13:03:06,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1132733440] [2022-04-27 13:03:06,182 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:06,183 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-27 13:03:06,183 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:06,183 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:06,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:06,211 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-27 13:03:06,211 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:06,212 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-27 13:03:06,212 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:06,212 INFO L87 Difference]: Start difference. First operand 174 states and 236 transitions. Second operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:06,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:06,534 INFO L93 Difference]: Finished difference Result 241 states and 329 transitions. [2022-04-27 13:03:06,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:03:06,534 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-27 13:03:06,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:06,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:06,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-27 13:03:06,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:06,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-27 13:03:06,537 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-27 13:03:06,611 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:06,615 INFO L225 Difference]: With dead ends: 241 [2022-04-27 13:03:06,615 INFO L226 Difference]: Without dead ends: 174 [2022-04-27 13:03:06,616 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:06,616 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:06,616 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 139 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:03:06,617 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-27 13:03:06,825 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 174. [2022-04-27 13:03:06,825 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:06,826 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:06,826 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:06,827 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:06,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:06,831 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 13:03:06,831 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:03:06,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:06,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:06,834 INFO L74 IsIncluded]: Start isIncluded. First operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 174 states. [2022-04-27 13:03:06,835 INFO L87 Difference]: Start difference. First operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 174 states. [2022-04-27 13:03:06,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:06,839 INFO L93 Difference]: Finished difference Result 174 states and 235 transitions. [2022-04-27 13:03:06,839 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:03:06,840 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:06,840 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:06,840 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:06,840 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:06,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 174 states, 128 states have (on average 1.3359375) internal successors, (171), 129 states have internal predecessors, (171), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-27 13:03:06,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 174 states to 174 states and 235 transitions. [2022-04-27 13:03:06,845 INFO L78 Accepts]: Start accepts. Automaton has 174 states and 235 transitions. Word has length 36 [2022-04-27 13:03:06,845 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:06,845 INFO L495 AbstractCegarLoop]: Abstraction has 174 states and 235 transitions. [2022-04-27 13:03:06,845 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.166666666666667) internal successors, (25), 5 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 13:03:06,845 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 235 transitions. [2022-04-27 13:03:06,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-27 13:03:06,846 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:06,846 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:06,870 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:07,059 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-27 13:03:07,059 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:07,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:07,060 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-27 13:03:07,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:07,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [448883608] [2022-04-27 13:03:07,060 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:07,060 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:07,085 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:07,086 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [270269872] [2022-04-27 13:03:07,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:07,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:07,086 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:07,093 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:07,120 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-27 13:03:07,142 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:07,143 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:03:07,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:07,152 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:08,891 INFO L272 TraceCheckUtils]: 0: Hoare triple {6441#true} call ULTIMATE.init(); {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {6441#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; {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6441#true} {6441#true} #108#return; {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {6441#true} call #t~ret9 := main(); {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L290 TraceCheckUtils]: 5: Hoare triple {6441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L272 TraceCheckUtils]: 6: Hoare triple {6441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:08,891 INFO L290 TraceCheckUtils]: 7: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 8: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 9: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6441#true} {6441#true} #94#return; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L272 TraceCheckUtils]: 11: Hoare triple {6441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 12: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 13: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 14: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {6441#true} {6441#true} #96#return; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 16: Hoare triple {6441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 17: Hoare triple {6441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6441#true} is VALID [2022-04-27 13:03:08,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {6441#true} assume !!(#t~post6 < 100);havoc #t~post6; {6441#true} is VALID [2022-04-27 13:03:08,893 INFO L290 TraceCheckUtils]: 19: Hoare triple {6441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,894 INFO L290 TraceCheckUtils]: 20: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,894 INFO L290 TraceCheckUtils]: 21: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,894 INFO L290 TraceCheckUtils]: 22: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,895 INFO L290 TraceCheckUtils]: 23: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,895 INFO L290 TraceCheckUtils]: 24: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 100);havoc #t~post8; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,895 INFO L272 TraceCheckUtils]: 25: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:08,895 INFO L290 TraceCheckUtils]: 26: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:08,896 INFO L290 TraceCheckUtils]: 27: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:08,896 INFO L290 TraceCheckUtils]: 28: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:08,896 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {6441#true} {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,897 INFO L272 TraceCheckUtils]: 30: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {6441#true} is VALID [2022-04-27 13:03:08,897 INFO L290 TraceCheckUtils]: 31: Hoare triple {6441#true} ~cond := #in~cond; {6441#true} is VALID [2022-04-27 13:03:08,897 INFO L290 TraceCheckUtils]: 32: Hoare triple {6441#true} assume !(0 == ~cond); {6441#true} is VALID [2022-04-27 13:03:08,897 INFO L290 TraceCheckUtils]: 33: Hoare triple {6441#true} assume true; {6441#true} is VALID [2022-04-27 13:03:08,898 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {6441#true} {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-27 13:03:08,898 INFO L272 TraceCheckUtils]: 35: Hoare triple {6503#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {6552#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:08,899 INFO L290 TraceCheckUtils]: 36: Hoare triple {6552#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6556#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:08,900 INFO L290 TraceCheckUtils]: 37: Hoare triple {6556#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {6442#false} is VALID [2022-04-27 13:03:08,901 INFO L290 TraceCheckUtils]: 38: Hoare triple {6442#false} assume !false; {6442#false} is VALID [2022-04-27 13:03:08,901 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-27 13:03:08,901 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:08,901 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:08,901 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [448883608] [2022-04-27 13:03:08,901 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:08,902 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [270269872] [2022-04-27 13:03:08,902 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [270269872] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:08,902 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:08,902 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:03:08,902 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1973268083] [2022-04-27 13:03:08,902 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:08,902 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-27 13:03:08,903 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:08,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:08,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:08,931 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:08,931 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:08,931 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:08,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:03:08,932 INFO L87 Difference]: Start difference. First operand 174 states and 235 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:09,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:09,392 INFO L93 Difference]: Finished difference Result 239 states and 335 transitions. [2022-04-27 13:03:09,392 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:03:09,393 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-27 13:03:09,393 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:09,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:09,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:09,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:09,395 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:09,395 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-27 13:03:09,445 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:09,450 INFO L225 Difference]: With dead ends: 239 [2022-04-27 13:03:09,451 INFO L226 Difference]: Without dead ends: 237 [2022-04-27 13:03:09,451 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:09,452 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 10 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:09,452 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 150 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:03:09,452 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 237 states. [2022-04-27 13:03:09,731 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 237 to 230. [2022-04-27 13:03:09,732 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:09,732 INFO L82 GeneralOperation]: Start isEquivalent. First operand 237 states. Second operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:09,732 INFO L74 IsIncluded]: Start isIncluded. First operand 237 states. Second operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:09,733 INFO L87 Difference]: Start difference. First operand 237 states. Second operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:09,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:09,738 INFO L93 Difference]: Finished difference Result 237 states and 331 transitions. [2022-04-27 13:03:09,738 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 331 transitions. [2022-04-27 13:03:09,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:09,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:09,739 INFO L74 IsIncluded]: Start isIncluded. First operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 237 states. [2022-04-27 13:03:09,739 INFO L87 Difference]: Start difference. First operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) Second operand 237 states. [2022-04-27 13:03:09,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:09,747 INFO L93 Difference]: Finished difference Result 237 states and 331 transitions. [2022-04-27 13:03:09,747 INFO L276 IsEmpty]: Start isEmpty. Operand 237 states and 331 transitions. [2022-04-27 13:03:09,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:09,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:09,748 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:09,748 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:09,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 230 states, 161 states have (on average 1.3664596273291925) internal successors, (220), 162 states have internal predecessors, (220), 53 states have call successors, (53), 16 states have call predecessors, (53), 15 states have return successors, (51), 51 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-27 13:03:09,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 230 states to 230 states and 324 transitions. [2022-04-27 13:03:09,755 INFO L78 Accepts]: Start accepts. Automaton has 230 states and 324 transitions. Word has length 39 [2022-04-27 13:03:09,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:09,756 INFO L495 AbstractCegarLoop]: Abstraction has 230 states and 324 transitions. [2022-04-27 13:03:09,756 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 13:03:09,756 INFO L276 IsEmpty]: Start isEmpty. Operand 230 states and 324 transitions. [2022-04-27 13:03:09,756 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-27 13:03:09,756 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:09,757 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:09,779 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:09,979 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-27 13:03:09,979 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:09,979 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:09,979 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-27 13:03:09,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:09,980 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1243962576] [2022-04-27 13:03:09,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:09,980 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:09,991 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:09,991 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [841130413] [2022-04-27 13:03:09,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:09,992 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:09,992 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:09,993 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:10,003 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-27 13:03:10,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:10,041 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-27 13:03:10,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:10,051 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:14,366 INFO L272 TraceCheckUtils]: 0: Hoare triple {7713#true} call ULTIMATE.init(); {7713#true} is VALID [2022-04-27 13:03:14,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {7713#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; {7713#true} is VALID [2022-04-27 13:03:14,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7713#true} {7713#true} #108#return; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L272 TraceCheckUtils]: 4: Hoare triple {7713#true} call #t~ret9 := main(); {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 5: Hoare triple {7713#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L272 TraceCheckUtils]: 6: Hoare triple {7713#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 7: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 8: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 9: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7713#true} {7713#true} #94#return; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L272 TraceCheckUtils]: 11: Hoare triple {7713#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 12: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 13: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L290 TraceCheckUtils]: 14: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:14,367 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7713#true} {7713#true} #96#return; {7713#true} is VALID [2022-04-27 13:03:14,371 INFO L290 TraceCheckUtils]: 16: Hoare triple {7713#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:14,372 INFO L290 TraceCheckUtils]: 17: Hoare triple {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:14,373 INFO L290 TraceCheckUtils]: 18: Hoare triple {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:14,373 INFO L290 TraceCheckUtils]: 19: Hoare triple {7766#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7776#(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 13:03:14,374 INFO L290 TraceCheckUtils]: 20: Hoare triple {7776#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7776#(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 13:03:14,374 INFO L290 TraceCheckUtils]: 21: Hoare triple {7776#(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 !!(#t~post7 < 100);havoc #t~post7; {7776#(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 13:03:14,375 INFO L290 TraceCheckUtils]: 22: Hoare triple {7776#(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); {7776#(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 13:03:14,375 INFO L290 TraceCheckUtils]: 23: Hoare triple {7776#(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; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,376 INFO L290 TraceCheckUtils]: 24: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,376 INFO L290 TraceCheckUtils]: 25: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,377 INFO L290 TraceCheckUtils]: 26: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,377 INFO L290 TraceCheckUtils]: 27: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,378 INFO L290 TraceCheckUtils]: 28: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,378 INFO L290 TraceCheckUtils]: 29: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,378 INFO L290 TraceCheckUtils]: 30: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,379 INFO L290 TraceCheckUtils]: 31: Hoare triple {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,379 INFO L272 TraceCheckUtils]: 32: Hoare triple {7789#(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)); {7713#true} is VALID [2022-04-27 13:03:14,379 INFO L290 TraceCheckUtils]: 33: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:14,379 INFO L290 TraceCheckUtils]: 34: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:14,379 INFO L290 TraceCheckUtils]: 35: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:14,380 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7713#true} {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #98#return; {7789#(and (= main_~s~0 0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-27 13:03:14,381 INFO L272 TraceCheckUtils]: 37: Hoare triple {7789#(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)); {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:14,381 INFO L290 TraceCheckUtils]: 38: Hoare triple {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7836#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:14,381 INFO L290 TraceCheckUtils]: 39: Hoare triple {7836#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7714#false} is VALID [2022-04-27 13:03:14,381 INFO L290 TraceCheckUtils]: 40: Hoare triple {7714#false} assume !false; {7714#false} is VALID [2022-04-27 13:03:14,381 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:14,382 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:14,607 INFO L290 TraceCheckUtils]: 40: Hoare triple {7714#false} assume !false; {7714#false} is VALID [2022-04-27 13:03:14,607 INFO L290 TraceCheckUtils]: 39: Hoare triple {7836#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7714#false} is VALID [2022-04-27 13:03:14,607 INFO L290 TraceCheckUtils]: 38: Hoare triple {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7836#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:14,608 INFO L272 TraceCheckUtils]: 37: Hoare triple {7852#(= 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)); {7832#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:14,609 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7713#true} {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,609 INFO L290 TraceCheckUtils]: 35: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:14,609 INFO L290 TraceCheckUtils]: 34: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:14,609 INFO L290 TraceCheckUtils]: 33: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:14,609 INFO L272 TraceCheckUtils]: 32: Hoare triple {7852#(= 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)); {7713#true} is VALID [2022-04-27 13:03:14,610 INFO L290 TraceCheckUtils]: 31: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,610 INFO L290 TraceCheckUtils]: 30: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,610 INFO L290 TraceCheckUtils]: 29: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,611 INFO L290 TraceCheckUtils]: 28: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,611 INFO L290 TraceCheckUtils]: 27: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,612 INFO L290 TraceCheckUtils]: 26: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,612 INFO L290 TraceCheckUtils]: 25: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:14,612 INFO L290 TraceCheckUtils]: 24: Hoare triple {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:15,560 INFO L290 TraceCheckUtils]: 23: Hoare triple {7895#(= (+ (* (+ (* (* main_~k~0 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; {7852#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:03:15,561 INFO L290 TraceCheckUtils]: 22: Hoare triple {7895#(= (+ (* (+ (* (* main_~k~0 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); {7895#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-27 13:03:15,561 INFO L290 TraceCheckUtils]: 21: Hoare triple {7895#(= (+ (* (+ (* (* main_~k~0 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 < 100);havoc #t~post7; {7895#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-27 13:03:15,561 INFO L290 TraceCheckUtils]: 20: Hoare triple {7895#(= (+ (* (+ (* (* main_~k~0 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; {7895#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-27 13:03:15,563 INFO L290 TraceCheckUtils]: 19: Hoare triple {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7895#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-27 13:03:15,563 INFO L290 TraceCheckUtils]: 18: Hoare triple {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:15,564 INFO L290 TraceCheckUtils]: 17: Hoare triple {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:15,564 INFO L290 TraceCheckUtils]: 16: Hoare triple {7713#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7908#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:03:15,565 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7713#true} {7713#true} #96#return; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L272 TraceCheckUtils]: 11: Hoare triple {7713#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7713#true} {7713#true} #94#return; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {7713#true} assume !(0 == ~cond); {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {7713#true} ~cond := #in~cond; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L272 TraceCheckUtils]: 6: Hoare triple {7713#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {7713#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L272 TraceCheckUtils]: 4: Hoare triple {7713#true} call #t~ret9 := main(); {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7713#true} {7713#true} #108#return; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {7713#true} assume true; {7713#true} is VALID [2022-04-27 13:03:15,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {7713#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; {7713#true} is VALID [2022-04-27 13:03:15,566 INFO L272 TraceCheckUtils]: 0: Hoare triple {7713#true} call ULTIMATE.init(); {7713#true} is VALID [2022-04-27 13:03:15,566 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:15,566 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:15,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1243962576] [2022-04-27 13:03:15,566 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:15,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [841130413] [2022-04-27 13:03:15,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [841130413] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:15,566 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:15,566 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 10 [2022-04-27 13:03:15,566 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1529090993] [2022-04-27 13:03:15,567 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:15,567 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 41 [2022-04-27 13:03:15,567 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:15,567 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:15,747 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:15,747 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 13:03:15,747 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:15,747 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 13:03:15,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2022-04-27 13:03:15,747 INFO L87 Difference]: Start difference. First operand 230 states and 324 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:17,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:17,979 INFO L93 Difference]: Finished difference Result 392 states and 578 transitions. [2022-04-27 13:03:17,979 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 13:03:17,979 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 41 [2022-04-27 13:03:17,979 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:17,979 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:17,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 252 transitions. [2022-04-27 13:03:17,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:17,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 252 transitions. [2022-04-27 13:03:17,986 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 252 transitions. [2022-04-27 13:03:18,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 252 edges. 252 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:18,482 INFO L225 Difference]: With dead ends: 392 [2022-04-27 13:03:18,482 INFO L226 Difference]: Without dead ends: 390 [2022-04-27 13:03:18,483 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 72 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=72, Invalid=234, Unknown=0, NotChecked=0, Total=306 [2022-04-27 13:03:18,483 INFO L413 NwaCegarLoop]: 66 mSDtfsCounter, 157 mSDsluCounter, 268 mSDsCounter, 0 mSdLazyCounter, 346 mSolverCounterSat, 89 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 334 SdHoareTripleChecker+Invalid, 435 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 89 IncrementalHoareTripleChecker+Valid, 346 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:18,483 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [164 Valid, 334 Invalid, 435 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [89 Valid, 346 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-27 13:03:18,484 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 390 states. [2022-04-27 13:03:18,956 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 390 to 377. [2022-04-27 13:03:18,956 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:18,966 INFO L82 GeneralOperation]: Start isEquivalent. First operand 390 states. Second operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:18,968 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:18,968 INFO L87 Difference]: Start difference. First operand 390 states. Second operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:18,982 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:18,982 INFO L93 Difference]: Finished difference Result 390 states and 576 transitions. [2022-04-27 13:03:18,982 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 576 transitions. [2022-04-27 13:03:18,983 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:18,983 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:18,984 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) Second operand 390 states. [2022-04-27 13:03:18,985 INFO L87 Difference]: Start difference. First operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) Second operand 390 states. [2022-04-27 13:03:18,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:18,999 INFO L93 Difference]: Finished difference Result 390 states and 576 transitions. [2022-04-27 13:03:18,999 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 576 transitions. [2022-04-27 13:03:19,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:19,000 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:19,000 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:19,000 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:19,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 266 states have (on average 1.4248120300751879) internal successors, (379), 267 states have internal predecessors, (379), 93 states have call successors, (93), 18 states have call predecessors, (93), 17 states have return successors, (91), 91 states have call predecessors, (91), 91 states have call successors, (91) [2022-04-27 13:03:19,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 563 transitions. [2022-04-27 13:03:19,016 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 563 transitions. Word has length 41 [2022-04-27 13:03:19,016 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:19,016 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 563 transitions. [2022-04-27 13:03:19,016 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 3 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 13:03:19,016 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 563 transitions. [2022-04-27 13:03:19,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:03:19,017 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:19,017 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:19,042 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:19,231 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-27 13:03:19,231 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:19,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:19,232 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-27 13:03:19,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:19,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1540675660] [2022-04-27 13:03:19,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:19,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:19,243 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:19,244 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1518671838] [2022-04-27 13:03:19,244 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:19,244 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:19,244 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:19,245 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:19,250 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-27 13:03:19,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:19,288 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 13:03:19,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:19,297 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:19,414 INFO L272 TraceCheckUtils]: 0: Hoare triple {9884#true} call ULTIMATE.init(); {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 1: Hoare triple {9884#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; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 2: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9884#true} {9884#true} #108#return; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L272 TraceCheckUtils]: 4: Hoare triple {9884#true} call #t~ret9 := main(); {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 5: Hoare triple {9884#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L272 TraceCheckUtils]: 6: Hoare triple {9884#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 7: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 8: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 9: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9884#true} {9884#true} #94#return; {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L272 TraceCheckUtils]: 11: Hoare triple {9884#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:19,415 INFO L290 TraceCheckUtils]: 12: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 13: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 14: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {9884#true} {9884#true} #96#return; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 16: Hoare triple {9884#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 17: Hoare triple {9884#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 18: Hoare triple {9884#true} assume !!(#t~post6 < 100);havoc #t~post6; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 19: Hoare triple {9884#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {9884#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 21: Hoare triple {9884#true} assume !!(#t~post7 < 100);havoc #t~post7; {9884#true} is VALID [2022-04-27 13:03:19,416 INFO L290 TraceCheckUtils]: 22: Hoare triple {9884#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:19,417 INFO L290 TraceCheckUtils]: 23: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:19,417 INFO L290 TraceCheckUtils]: 24: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:19,417 INFO L272 TraceCheckUtils]: 25: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:19,417 INFO L290 TraceCheckUtils]: 26: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:19,417 INFO L290 TraceCheckUtils]: 27: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:19,417 INFO L290 TraceCheckUtils]: 28: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:19,418 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {9884#true} {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:19,418 INFO L272 TraceCheckUtils]: 30: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:19,418 INFO L290 TraceCheckUtils]: 31: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:19,418 INFO L290 TraceCheckUtils]: 32: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:19,418 INFO L290 TraceCheckUtils]: 33: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:19,418 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {9884#true} {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:19,419 INFO L272 TraceCheckUtils]: 35: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {9884#true} is VALID [2022-04-27 13:03:19,419 INFO L290 TraceCheckUtils]: 36: Hoare triple {9884#true} ~cond := #in~cond; {9884#true} is VALID [2022-04-27 13:03:19,419 INFO L290 TraceCheckUtils]: 37: Hoare triple {9884#true} assume !(0 == ~cond); {9884#true} is VALID [2022-04-27 13:03:19,419 INFO L290 TraceCheckUtils]: 38: Hoare triple {9884#true} assume true; {9884#true} is VALID [2022-04-27 13:03:19,419 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {9884#true} {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-27 13:03:19,420 INFO L272 TraceCheckUtils]: 40: Hoare triple {9955#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10010#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:19,420 INFO L290 TraceCheckUtils]: 41: Hoare triple {10010#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10014#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:19,421 INFO L290 TraceCheckUtils]: 42: Hoare triple {10014#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9885#false} is VALID [2022-04-27 13:03:19,421 INFO L290 TraceCheckUtils]: 43: Hoare triple {9885#false} assume !false; {9885#false} is VALID [2022-04-27 13:03:19,421 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 13:03:19,421 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:19,421 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:19,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1540675660] [2022-04-27 13:03:19,421 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:19,421 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1518671838] [2022-04-27 13:03:19,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1518671838] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:19,421 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:19,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:03:19,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1531429358] [2022-04-27 13:03:19,421 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:19,422 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-27 13:03:19,422 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:19,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 13:03:19,444 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:19,445 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:19,445 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:19,445 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:19,445 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:03:19,445 INFO L87 Difference]: Start difference. First operand 377 states and 563 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 13:03:20,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:20,500 INFO L93 Difference]: Finished difference Result 566 states and 887 transitions. [2022-04-27 13:03:20,500 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:03:20,500 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-27 13:03:20,500 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:20,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 13:03:20,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:20,501 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 13:03:20,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-27 13:03:20,502 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-27 13:03:20,559 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:20,582 INFO L225 Difference]: With dead ends: 566 [2022-04-27 13:03:20,583 INFO L226 Difference]: Without dead ends: 564 [2022-04-27 13:03:20,583 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:03:20,584 INFO L413 NwaCegarLoop]: 49 mSDtfsCounter, 12 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 166 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:20,584 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 166 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:03:20,584 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 564 states. [2022-04-27 13:03:21,406 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 564 to 495. [2022-04-27 13:03:21,406 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:21,407 INFO L82 GeneralOperation]: Start isEquivalent. First operand 564 states. Second operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:21,408 INFO L74 IsIncluded]: Start isIncluded. First operand 564 states. Second operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:21,409 INFO L87 Difference]: Start difference. First operand 564 states. Second operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:21,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:21,435 INFO L93 Difference]: Finished difference Result 564 states and 884 transitions. [2022-04-27 13:03:21,435 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 884 transitions. [2022-04-27 13:03:21,437 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:21,437 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:21,439 INFO L74 IsIncluded]: Start isIncluded. First operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) Second operand 564 states. [2022-04-27 13:03:21,439 INFO L87 Difference]: Start difference. First operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) Second operand 564 states. [2022-04-27 13:03:21,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:21,466 INFO L93 Difference]: Finished difference Result 564 states and 884 transitions. [2022-04-27 13:03:21,466 INFO L276 IsEmpty]: Start isEmpty. Operand 564 states and 884 transitions. [2022-04-27 13:03:21,468 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:21,468 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:21,469 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:21,469 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:21,470 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 495 states, 307 states have (on average 1.4267100977198697) internal successors, (438), 327 states have internal predecessors, (438), 169 states have call successors, (169), 19 states have call predecessors, (169), 18 states have return successors, (167), 148 states have call predecessors, (167), 167 states have call successors, (167) [2022-04-27 13:03:21,498 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 495 states to 495 states and 774 transitions. [2022-04-27 13:03:21,498 INFO L78 Accepts]: Start accepts. Automaton has 495 states and 774 transitions. Word has length 44 [2022-04-27 13:03:21,498 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:21,498 INFO L495 AbstractCegarLoop]: Abstraction has 495 states and 774 transitions. [2022-04-27 13:03:21,499 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-27 13:03:21,499 INFO L276 IsEmpty]: Start isEmpty. Operand 495 states and 774 transitions. [2022-04-27 13:03:21,499 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-27 13:03:21,499 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:21,499 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:21,526 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:21,723 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-27 13:03:21,724 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:21,724 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:21,724 INFO L85 PathProgramCache]: Analyzing trace with hash -1018638220, now seen corresponding path program 1 times [2022-04-27 13:03:21,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:21,724 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1503621756] [2022-04-27 13:03:21,724 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:21,724 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:21,743 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:21,743 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1653878305] [2022-04-27 13:03:21,743 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:21,743 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:21,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:21,752 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:21,759 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-27 13:03:21,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:21,798 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 13:03:21,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:21,808 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:21,988 INFO L272 TraceCheckUtils]: 0: Hoare triple {12762#true} call ULTIMATE.init(); {12762#true} is VALID [2022-04-27 13:03:21,989 INFO L290 TraceCheckUtils]: 1: Hoare triple {12762#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; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,989 INFO L290 TraceCheckUtils]: 2: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,990 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12770#(<= ~counter~0 0)} {12762#true} #108#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,990 INFO L272 TraceCheckUtils]: 4: Hoare triple {12770#(<= ~counter~0 0)} call #t~ret9 := main(); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,990 INFO L290 TraceCheckUtils]: 5: Hoare triple {12770#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,991 INFO L272 TraceCheckUtils]: 6: Hoare triple {12770#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,991 INFO L290 TraceCheckUtils]: 7: Hoare triple {12770#(<= ~counter~0 0)} ~cond := #in~cond; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,992 INFO L290 TraceCheckUtils]: 8: Hoare triple {12770#(<= ~counter~0 0)} assume !(0 == ~cond); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,992 INFO L290 TraceCheckUtils]: 9: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,992 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12770#(<= ~counter~0 0)} {12770#(<= ~counter~0 0)} #94#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,993 INFO L272 TraceCheckUtils]: 11: Hoare triple {12770#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,993 INFO L290 TraceCheckUtils]: 12: Hoare triple {12770#(<= ~counter~0 0)} ~cond := #in~cond; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {12770#(<= ~counter~0 0)} assume !(0 == ~cond); {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,994 INFO L290 TraceCheckUtils]: 14: Hoare triple {12770#(<= ~counter~0 0)} assume true; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,994 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12770#(<= ~counter~0 0)} {12770#(<= ~counter~0 0)} #96#return; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,995 INFO L290 TraceCheckUtils]: 16: Hoare triple {12770#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12770#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:21,996 INFO L290 TraceCheckUtils]: 17: Hoare triple {12770#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:21,996 INFO L290 TraceCheckUtils]: 18: Hoare triple {12819#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:21,996 INFO L290 TraceCheckUtils]: 19: Hoare triple {12819#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12819#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:21,997 INFO L290 TraceCheckUtils]: 20: Hoare triple {12819#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:21,997 INFO L290 TraceCheckUtils]: 21: Hoare triple {12829#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:21,998 INFO L290 TraceCheckUtils]: 22: Hoare triple {12829#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:21,998 INFO L290 TraceCheckUtils]: 23: Hoare triple {12829#(<= ~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; {12829#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:21,998 INFO L290 TraceCheckUtils]: 24: Hoare triple {12829#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:21,999 INFO L290 TraceCheckUtils]: 25: Hoare triple {12842#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:21,999 INFO L290 TraceCheckUtils]: 26: Hoare triple {12842#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12842#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:22,000 INFO L290 TraceCheckUtils]: 27: Hoare triple {12842#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12852#(<= |main_#t~post7| 3)} is VALID [2022-04-27 13:03:22,000 INFO L290 TraceCheckUtils]: 28: Hoare triple {12852#(<= |main_#t~post7| 3)} assume !(#t~post7 < 100);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:22,000 INFO L290 TraceCheckUtils]: 29: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:22,000 INFO L290 TraceCheckUtils]: 30: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,000 INFO L290 TraceCheckUtils]: 31: Hoare triple {12763#false} assume !!(#t~post6 < 100);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,000 INFO L290 TraceCheckUtils]: 32: Hoare triple {12763#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 33: Hoare triple {12763#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 34: Hoare triple {12763#false} assume !(#t~post7 < 100);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 35: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 36: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 37: Hoare triple {12763#false} assume !(#t~post6 < 100);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L272 TraceCheckUtils]: 38: Hoare triple {12763#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 39: Hoare triple {12763#false} ~cond := #in~cond; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 40: Hoare triple {12763#false} assume 0 == ~cond; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L290 TraceCheckUtils]: 41: Hoare triple {12763#false} assume !false; {12763#false} is VALID [2022-04-27 13:03:22,001 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-27 13:03:22,001 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 41: Hoare triple {12763#false} assume !false; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 40: Hoare triple {12763#false} assume 0 == ~cond; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 39: Hoare triple {12763#false} ~cond := #in~cond; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L272 TraceCheckUtils]: 38: Hoare triple {12763#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 37: Hoare triple {12763#false} assume !(#t~post6 < 100);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 36: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 35: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 34: Hoare triple {12763#false} assume !(#t~post7 < 100);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 33: Hoare triple {12763#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 32: Hoare triple {12763#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 31: Hoare triple {12763#false} assume !!(#t~post6 < 100);havoc #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,211 INFO L290 TraceCheckUtils]: 30: Hoare triple {12763#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12763#false} is VALID [2022-04-27 13:03:22,212 INFO L290 TraceCheckUtils]: 29: Hoare triple {12763#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; {12763#false} is VALID [2022-04-27 13:03:22,212 INFO L290 TraceCheckUtils]: 28: Hoare triple {12934#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {12763#false} is VALID [2022-04-27 13:03:22,212 INFO L290 TraceCheckUtils]: 27: Hoare triple {12938#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12934#(< |main_#t~post7| 100)} is VALID [2022-04-27 13:03:22,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {12938#(< ~counter~0 100)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12938#(< ~counter~0 100)} is VALID [2022-04-27 13:03:22,213 INFO L290 TraceCheckUtils]: 25: Hoare triple {12938#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {12938#(< ~counter~0 100)} is VALID [2022-04-27 13:03:22,214 INFO L290 TraceCheckUtils]: 24: Hoare triple {12948#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12938#(< ~counter~0 100)} is VALID [2022-04-27 13:03:22,214 INFO L290 TraceCheckUtils]: 23: Hoare triple {12948#(< ~counter~0 99)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {12948#(< ~counter~0 99)} is VALID [2022-04-27 13:03:22,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {12948#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {12948#(< ~counter~0 99)} is VALID [2022-04-27 13:03:22,215 INFO L290 TraceCheckUtils]: 21: Hoare triple {12948#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {12948#(< ~counter~0 99)} is VALID [2022-04-27 13:03:22,215 INFO L290 TraceCheckUtils]: 20: Hoare triple {12961#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {12948#(< ~counter~0 99)} is VALID [2022-04-27 13:03:22,215 INFO L290 TraceCheckUtils]: 19: Hoare triple {12961#(< ~counter~0 98)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12961#(< ~counter~0 98)} is VALID [2022-04-27 13:03:22,216 INFO L290 TraceCheckUtils]: 18: Hoare triple {12961#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {12961#(< ~counter~0 98)} is VALID [2022-04-27 13:03:22,216 INFO L290 TraceCheckUtils]: 17: Hoare triple {12971#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12961#(< ~counter~0 98)} is VALID [2022-04-27 13:03:22,216 INFO L290 TraceCheckUtils]: 16: Hoare triple {12971#(< ~counter~0 97)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,217 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {12762#true} {12971#(< ~counter~0 97)} #96#return; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,217 INFO L290 TraceCheckUtils]: 14: Hoare triple {12762#true} assume true; {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L290 TraceCheckUtils]: 13: Hoare triple {12762#true} assume !(0 == ~cond); {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L290 TraceCheckUtils]: 12: Hoare triple {12762#true} ~cond := #in~cond; {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L272 TraceCheckUtils]: 11: Hoare triple {12971#(< ~counter~0 97)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12762#true} {12971#(< ~counter~0 97)} #94#return; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {12762#true} assume true; {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {12762#true} assume !(0 == ~cond); {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L290 TraceCheckUtils]: 7: Hoare triple {12762#true} ~cond := #in~cond; {12762#true} is VALID [2022-04-27 13:03:22,217 INFO L272 TraceCheckUtils]: 6: Hoare triple {12971#(< ~counter~0 97)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {12762#true} is VALID [2022-04-27 13:03:22,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {12971#(< ~counter~0 97)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {12971#(< ~counter~0 97)} call #t~ret9 := main(); {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12971#(< ~counter~0 97)} {12762#true} #108#return; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {12971#(< ~counter~0 97)} assume true; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,219 INFO L290 TraceCheckUtils]: 1: Hoare triple {12762#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; {12971#(< ~counter~0 97)} is VALID [2022-04-27 13:03:22,219 INFO L272 TraceCheckUtils]: 0: Hoare triple {12762#true} call ULTIMATE.init(); {12762#true} is VALID [2022-04-27 13:03:22,219 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 16 proven. 5 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-27 13:03:22,219 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:22,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1503621756] [2022-04-27 13:03:22,219 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:22,219 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1653878305] [2022-04-27 13:03:22,219 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1653878305] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:22,219 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:22,219 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-27 13:03:22,220 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [122794179] [2022-04-27 13:03:22,220 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:22,220 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-27 13:03:22,220 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:22,220 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:22,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:22,259 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-27 13:03:22,259 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:22,260 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-27 13:03:22,260 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:03:22,260 INFO L87 Difference]: Start difference. First operand 495 states and 774 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:24,153 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:24,153 INFO L93 Difference]: Finished difference Result 1127 states and 1721 transitions. [2022-04-27 13:03:24,153 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-27 13:03:24,153 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 42 [2022-04-27 13:03:24,153 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:24,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:24,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 224 transitions. [2022-04-27 13:03:24,156 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:24,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 224 transitions. [2022-04-27 13:03:24,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 224 transitions. [2022-04-27 13:03:24,345 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 224 edges. 224 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:24,387 INFO L225 Difference]: With dead ends: 1127 [2022-04-27 13:03:24,388 INFO L226 Difference]: Without dead ends: 770 [2022-04-27 13:03:24,390 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=179, Unknown=0, NotChecked=0, Total=272 [2022-04-27 13:03:24,391 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 156 mSDsluCounter, 321 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 62 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 390 SdHoareTripleChecker+Invalid, 236 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 62 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:24,391 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [156 Valid, 390 Invalid, 236 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [62 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:24,392 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 770 states. [2022-04-27 13:03:25,538 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 770 to 736. [2022-04-27 13:03:25,538 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:25,539 INFO L82 GeneralOperation]: Start isEquivalent. First operand 770 states. Second operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:25,541 INFO L74 IsIncluded]: Start isIncluded. First operand 770 states. Second operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:25,542 INFO L87 Difference]: Start difference. First operand 770 states. Second operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:25,582 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:25,582 INFO L93 Difference]: Finished difference Result 770 states and 1118 transitions. [2022-04-27 13:03:25,583 INFO L276 IsEmpty]: Start isEmpty. Operand 770 states and 1118 transitions. [2022-04-27 13:03:25,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:25,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:25,587 INFO L74 IsIncluded]: Start isIncluded. First operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) Second operand 770 states. [2022-04-27 13:03:25,588 INFO L87 Difference]: Start difference. First operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) Second operand 770 states. [2022-04-27 13:03:25,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:25,630 INFO L93 Difference]: Finished difference Result 770 states and 1118 transitions. [2022-04-27 13:03:25,630 INFO L276 IsEmpty]: Start isEmpty. Operand 770 states and 1118 transitions. [2022-04-27 13:03:25,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:25,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:25,633 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:25,633 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:25,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 736 states, 471 states have (on average 1.3630573248407643) internal successors, (642), 495 states have internal predecessors, (642), 224 states have call successors, (224), 41 states have call predecessors, (224), 40 states have return successors, (219), 199 states have call predecessors, (219), 219 states have call successors, (219) [2022-04-27 13:03:25,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 736 states to 736 states and 1085 transitions. [2022-04-27 13:03:25,694 INFO L78 Accepts]: Start accepts. Automaton has 736 states and 1085 transitions. Word has length 42 [2022-04-27 13:03:25,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:25,695 INFO L495 AbstractCegarLoop]: Abstraction has 736 states and 1085 transitions. [2022-04-27 13:03:25,695 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 12 states have internal predecessors, (48), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:25,695 INFO L276 IsEmpty]: Start isEmpty. Operand 736 states and 1085 transitions. [2022-04-27 13:03:25,695 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-27 13:03:25,695 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:25,696 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:25,718 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:25,911 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-27 13:03:25,911 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:25,911 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:25,912 INFO L85 PathProgramCache]: Analyzing trace with hash -2064241646, now seen corresponding path program 1 times [2022-04-27 13:03:25,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:25,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1164470571] [2022-04-27 13:03:25,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:25,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:25,931 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:25,932 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1009967636] [2022-04-27 13:03:25,932 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:25,932 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:25,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:25,935 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:25,936 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-27 13:03:25,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:25,987 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 13:03:25,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:26,001 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:26,200 INFO L272 TraceCheckUtils]: 0: Hoare triple {17410#true} call ULTIMATE.init(); {17410#true} is VALID [2022-04-27 13:03:26,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {17410#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; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17418#(<= ~counter~0 0)} {17410#true} #108#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,217 INFO L272 TraceCheckUtils]: 4: Hoare triple {17418#(<= ~counter~0 0)} call #t~ret9 := main(); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,218 INFO L290 TraceCheckUtils]: 5: Hoare triple {17418#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,219 INFO L272 TraceCheckUtils]: 6: Hoare triple {17418#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,221 INFO L290 TraceCheckUtils]: 7: Hoare triple {17418#(<= ~counter~0 0)} ~cond := #in~cond; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,221 INFO L290 TraceCheckUtils]: 8: Hoare triple {17418#(<= ~counter~0 0)} assume !(0 == ~cond); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,226 INFO L290 TraceCheckUtils]: 9: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,226 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17418#(<= ~counter~0 0)} {17418#(<= ~counter~0 0)} #94#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,227 INFO L272 TraceCheckUtils]: 11: Hoare triple {17418#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,227 INFO L290 TraceCheckUtils]: 12: Hoare triple {17418#(<= ~counter~0 0)} ~cond := #in~cond; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,227 INFO L290 TraceCheckUtils]: 13: Hoare triple {17418#(<= ~counter~0 0)} assume !(0 == ~cond); {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,228 INFO L290 TraceCheckUtils]: 14: Hoare triple {17418#(<= ~counter~0 0)} assume true; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,228 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17418#(<= ~counter~0 0)} {17418#(<= ~counter~0 0)} #96#return; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,228 INFO L290 TraceCheckUtils]: 16: Hoare triple {17418#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17418#(<= ~counter~0 0)} is VALID [2022-04-27 13:03:26,229 INFO L290 TraceCheckUtils]: 17: Hoare triple {17418#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:26,229 INFO L290 TraceCheckUtils]: 18: Hoare triple {17467#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:26,230 INFO L290 TraceCheckUtils]: 19: Hoare triple {17467#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17467#(<= ~counter~0 1)} is VALID [2022-04-27 13:03:26,230 INFO L290 TraceCheckUtils]: 20: Hoare triple {17467#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:26,231 INFO L290 TraceCheckUtils]: 21: Hoare triple {17477#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:26,231 INFO L290 TraceCheckUtils]: 22: Hoare triple {17477#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:26,231 INFO L290 TraceCheckUtils]: 23: Hoare triple {17477#(<= ~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; {17477#(<= ~counter~0 2)} is VALID [2022-04-27 13:03:26,232 INFO L290 TraceCheckUtils]: 24: Hoare triple {17477#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:26,232 INFO L290 TraceCheckUtils]: 25: Hoare triple {17490#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:26,232 INFO L290 TraceCheckUtils]: 26: Hoare triple {17490#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17490#(<= ~counter~0 3)} is VALID [2022-04-27 13:03:26,233 INFO L290 TraceCheckUtils]: 27: Hoare triple {17490#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:03:26,233 INFO L290 TraceCheckUtils]: 28: Hoare triple {17500#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:03:26,234 INFO L290 TraceCheckUtils]: 29: Hoare triple {17500#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17500#(<= ~counter~0 4)} is VALID [2022-04-27 13:03:26,234 INFO L290 TraceCheckUtils]: 30: Hoare triple {17500#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17510#(<= |main_#t~post8| 4)} is VALID [2022-04-27 13:03:26,234 INFO L290 TraceCheckUtils]: 31: Hoare triple {17510#(<= |main_#t~post8| 4)} assume !(#t~post8 < 100);havoc #t~post8; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 32: Hoare triple {17411#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 33: Hoare triple {17411#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 34: Hoare triple {17411#false} assume !!(#t~post7 < 100);havoc #t~post7; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 35: Hoare triple {17411#false} assume !(~c~0 >= ~b~0); {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 36: Hoare triple {17411#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; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 37: Hoare triple {17411#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 38: Hoare triple {17411#false} assume !(#t~post6 < 100);havoc #t~post6; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L272 TraceCheckUtils]: 39: Hoare triple {17411#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 40: Hoare triple {17411#false} ~cond := #in~cond; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 41: Hoare triple {17411#false} assume 0 == ~cond; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L290 TraceCheckUtils]: 42: Hoare triple {17411#false} assume !false; {17411#false} is VALID [2022-04-27 13:03:26,235 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 11 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:26,236 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:03:26,477 INFO L290 TraceCheckUtils]: 42: Hoare triple {17411#false} assume !false; {17411#false} is VALID [2022-04-27 13:03:26,477 INFO L290 TraceCheckUtils]: 41: Hoare triple {17411#false} assume 0 == ~cond; {17411#false} is VALID [2022-04-27 13:03:26,477 INFO L290 TraceCheckUtils]: 40: Hoare triple {17411#false} ~cond := #in~cond; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L272 TraceCheckUtils]: 39: Hoare triple {17411#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 38: Hoare triple {17411#false} assume !(#t~post6 < 100);havoc #t~post6; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 37: Hoare triple {17411#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 36: Hoare triple {17411#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; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 35: Hoare triple {17411#false} assume !(~c~0 >= ~b~0); {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 34: Hoare triple {17411#false} assume !!(#t~post7 < 100);havoc #t~post7; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 33: Hoare triple {17411#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 32: Hoare triple {17411#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 31: Hoare triple {17580#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {17411#false} is VALID [2022-04-27 13:03:26,478 INFO L290 TraceCheckUtils]: 30: Hoare triple {17584#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {17580#(< |main_#t~post8| 100)} is VALID [2022-04-27 13:03:26,479 INFO L290 TraceCheckUtils]: 29: Hoare triple {17584#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {17584#(< ~counter~0 100)} is VALID [2022-04-27 13:03:26,479 INFO L290 TraceCheckUtils]: 28: Hoare triple {17584#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {17584#(< ~counter~0 100)} is VALID [2022-04-27 13:03:26,480 INFO L290 TraceCheckUtils]: 27: Hoare triple {17594#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17584#(< ~counter~0 100)} is VALID [2022-04-27 13:03:26,480 INFO L290 TraceCheckUtils]: 26: Hoare triple {17594#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17594#(< ~counter~0 99)} is VALID [2022-04-27 13:03:26,480 INFO L290 TraceCheckUtils]: 25: Hoare triple {17594#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {17594#(< ~counter~0 99)} is VALID [2022-04-27 13:03:26,481 INFO L290 TraceCheckUtils]: 24: Hoare triple {17604#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17594#(< ~counter~0 99)} is VALID [2022-04-27 13:03:26,481 INFO L290 TraceCheckUtils]: 23: Hoare triple {17604#(< ~counter~0 98)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {17604#(< ~counter~0 98)} is VALID [2022-04-27 13:03:26,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {17604#(< ~counter~0 98)} assume !(~c~0 >= ~b~0); {17604#(< ~counter~0 98)} is VALID [2022-04-27 13:03:26,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {17604#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {17604#(< ~counter~0 98)} is VALID [2022-04-27 13:03:26,482 INFO L290 TraceCheckUtils]: 20: Hoare triple {17617#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {17604#(< ~counter~0 98)} is VALID [2022-04-27 13:03:26,482 INFO L290 TraceCheckUtils]: 19: Hoare triple {17617#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {17617#(< ~counter~0 97)} is VALID [2022-04-27 13:03:26,482 INFO L290 TraceCheckUtils]: 18: Hoare triple {17617#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {17617#(< ~counter~0 97)} is VALID [2022-04-27 13:03:26,483 INFO L290 TraceCheckUtils]: 17: Hoare triple {17627#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {17617#(< ~counter~0 97)} is VALID [2022-04-27 13:03:26,483 INFO L290 TraceCheckUtils]: 16: Hoare triple {17627#(< ~counter~0 96)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,483 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {17410#true} {17627#(< ~counter~0 96)} #96#return; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,483 INFO L290 TraceCheckUtils]: 14: Hoare triple {17410#true} assume true; {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L290 TraceCheckUtils]: 13: Hoare triple {17410#true} assume !(0 == ~cond); {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L290 TraceCheckUtils]: 12: Hoare triple {17410#true} ~cond := #in~cond; {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L272 TraceCheckUtils]: 11: Hoare triple {17627#(< ~counter~0 96)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17410#true} {17627#(< ~counter~0 96)} #94#return; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,484 INFO L290 TraceCheckUtils]: 9: Hoare triple {17410#true} assume true; {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L290 TraceCheckUtils]: 8: Hoare triple {17410#true} assume !(0 == ~cond); {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L290 TraceCheckUtils]: 7: Hoare triple {17410#true} ~cond := #in~cond; {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L272 TraceCheckUtils]: 6: Hoare triple {17627#(< ~counter~0 96)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {17410#true} is VALID [2022-04-27 13:03:26,484 INFO L290 TraceCheckUtils]: 5: Hoare triple {17627#(< ~counter~0 96)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,485 INFO L272 TraceCheckUtils]: 4: Hoare triple {17627#(< ~counter~0 96)} call #t~ret9 := main(); {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,485 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17627#(< ~counter~0 96)} {17410#true} #108#return; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,485 INFO L290 TraceCheckUtils]: 2: Hoare triple {17627#(< ~counter~0 96)} assume true; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {17410#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; {17627#(< ~counter~0 96)} is VALID [2022-04-27 13:03:26,486 INFO L272 TraceCheckUtils]: 0: Hoare triple {17410#true} call ULTIMATE.init(); {17410#true} is VALID [2022-04-27 13:03:26,486 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 11 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 13:03:26,486 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:26,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1164470571] [2022-04-27 13:03:26,486 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:26,486 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1009967636] [2022-04-27 13:03:26,486 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1009967636] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:03:26,486 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:03:26,487 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 13:03:26,487 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1148457427] [2022-04-27 13:03:26,487 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:03:26,487 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-27 13:03:26,487 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:26,487 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:26,533 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 13:03:26,533 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 13:03:26,533 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:26,533 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 13:03:26,533 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 13:03:26,534 INFO L87 Difference]: Start difference. First operand 736 states and 1085 transitions. Second operand has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:29,381 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:29,382 INFO L93 Difference]: Finished difference Result 1597 states and 2379 transitions. [2022-04-27 13:03:29,382 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-27 13:03:29,382 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-27 13:03:29,382 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:29,382 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:29,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 281 transitions. [2022-04-27 13:03:29,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:29,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 281 transitions. [2022-04-27 13:03:29,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 281 transitions. [2022-04-27 13:03:29,633 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 281 edges. 281 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:29,717 INFO L225 Difference]: With dead ends: 1597 [2022-04-27 13:03:29,718 INFO L226 Difference]: Without dead ends: 1119 [2022-04-27 13:03:29,720 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=144, Invalid=276, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:03:29,720 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 237 mSDsluCounter, 330 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 237 SdHoareTripleChecker+Valid, 405 SdHoareTripleChecker+Invalid, 279 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 108 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:29,720 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [237 Valid, 405 Invalid, 279 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [108 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-27 13:03:29,721 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1119 states. [2022-04-27 13:03:31,442 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1119 to 1072. [2022-04-27 13:03:31,442 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:31,444 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1119 states. Second operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:31,446 INFO L74 IsIncluded]: Start isIncluded. First operand 1119 states. Second operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:31,447 INFO L87 Difference]: Start difference. First operand 1119 states. Second operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:31,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:31,534 INFO L93 Difference]: Finished difference Result 1119 states and 1584 transitions. [2022-04-27 13:03:31,534 INFO L276 IsEmpty]: Start isEmpty. Operand 1119 states and 1584 transitions. [2022-04-27 13:03:31,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:31,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:31,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) Second operand 1119 states. [2022-04-27 13:03:31,542 INFO L87 Difference]: Start difference. First operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) Second operand 1119 states. [2022-04-27 13:03:31,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:31,610 INFO L93 Difference]: Finished difference Result 1119 states and 1584 transitions. [2022-04-27 13:03:31,610 INFO L276 IsEmpty]: Start isEmpty. Operand 1119 states and 1584 transitions. [2022-04-27 13:03:31,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:31,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:31,614 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:31,614 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:31,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1072 states, 697 states have (on average 1.3113342898134863) internal successors, (914), 730 states have internal predecessors, (914), 318 states have call successors, (318), 57 states have call predecessors, (318), 56 states have return successors, (311), 284 states have call predecessors, (311), 311 states have call successors, (311) [2022-04-27 13:03:31,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1072 states to 1072 states and 1543 transitions. [2022-04-27 13:03:31,702 INFO L78 Accepts]: Start accepts. Automaton has 1072 states and 1543 transitions. Word has length 43 [2022-04-27 13:03:31,702 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:31,703 INFO L495 AbstractCegarLoop]: Abstraction has 1072 states and 1543 transitions. [2022-04-27 13:03:31,703 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.857142857142857) internal successors, (54), 14 states have internal predecessors, (54), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 2 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-27 13:03:31,703 INFO L276 IsEmpty]: Start isEmpty. Operand 1072 states and 1543 transitions. [2022-04-27 13:03:31,703 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 13:03:31,703 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:31,704 INFO L195 NwaCegarLoop]: trace histogram [4, 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] [2022-04-27 13:03:31,730 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:31,927 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:31,927 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:31,928 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:31,928 INFO L85 PathProgramCache]: Analyzing trace with hash 1262965884, now seen corresponding path program 2 times [2022-04-27 13:03:31,928 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:31,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1954659132] [2022-04-27 13:03:31,928 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:31,928 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:31,943 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:31,943 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1354238148] [2022-04-27 13:03:31,943 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:03:31,943 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:31,943 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:31,951 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:31,957 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-27 13:03:32,006 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:03:32,006 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:03:32,007 INFO L263 TraceCheckSpWp]: Trace formula consists of 189 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 13:03:32,021 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:32,022 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:32,127 INFO L272 TraceCheckUtils]: 0: Hoare triple {23972#true} call ULTIMATE.init(); {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {23972#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; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23972#true} {23972#true} #108#return; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L272 TraceCheckUtils]: 4: Hoare triple {23972#true} call #t~ret9 := main(); {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 5: Hoare triple {23972#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L272 TraceCheckUtils]: 6: Hoare triple {23972#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 7: Hoare triple {23972#true} ~cond := #in~cond; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 8: Hoare triple {23972#true} assume !(0 == ~cond); {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 9: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23972#true} {23972#true} #94#return; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L272 TraceCheckUtils]: 11: Hoare triple {23972#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 12: Hoare triple {23972#true} ~cond := #in~cond; {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 13: Hoare triple {23972#true} assume !(0 == ~cond); {23972#true} is VALID [2022-04-27 13:03:32,127 INFO L290 TraceCheckUtils]: 14: Hoare triple {23972#true} assume true; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {23972#true} {23972#true} #96#return; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 16: Hoare triple {23972#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 17: Hoare triple {23972#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 18: Hoare triple {23972#true} assume !!(#t~post6 < 100);havoc #t~post6; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 19: Hoare triple {23972#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 20: Hoare triple {23972#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 21: Hoare triple {23972#true} assume !!(#t~post7 < 100);havoc #t~post7; {23972#true} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 22: Hoare triple {23972#true} assume !(~c~0 >= ~b~0); {24043#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-27 13:03:32,128 INFO L290 TraceCheckUtils]: 23: Hoare triple {24043#(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; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:03:32,129 INFO L290 TraceCheckUtils]: 24: Hoare triple {24047#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:03:32,129 INFO L290 TraceCheckUtils]: 25: Hoare triple {24047#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {24047#(< main_~b~0 main_~a~0)} is VALID [2022-04-27 13:03:32,129 INFO L290 TraceCheckUtils]: 26: Hoare triple {24047#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:03:32,130 INFO L290 TraceCheckUtils]: 27: Hoare triple {24057#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:03:32,130 INFO L290 TraceCheckUtils]: 28: Hoare triple {24057#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {24057#(< main_~b~0 main_~c~0)} is VALID [2022-04-27 13:03:32,130 INFO L290 TraceCheckUtils]: 29: Hoare triple {24057#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {23973#false} is VALID [2022-04-27 13:03:32,130 INFO L290 TraceCheckUtils]: 30: Hoare triple {23973#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; {23973#false} is VALID [2022-04-27 13:03:32,130 INFO L290 TraceCheckUtils]: 31: Hoare triple {23973#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23973#false} is VALID [2022-04-27 13:03:32,130 INFO L290 TraceCheckUtils]: 32: Hoare triple {23973#false} assume !!(#t~post6 < 100);havoc #t~post6; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 33: Hoare triple {23973#false} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 34: Hoare triple {23973#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 35: Hoare triple {23973#false} assume !!(#t~post7 < 100);havoc #t~post7; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 36: Hoare triple {23973#false} assume !(~c~0 >= ~b~0); {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 37: Hoare triple {23973#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; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 38: Hoare triple {23973#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 39: Hoare triple {23973#false} assume !(#t~post6 < 100);havoc #t~post6; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L272 TraceCheckUtils]: 40: Hoare triple {23973#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 41: Hoare triple {23973#false} ~cond := #in~cond; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 42: Hoare triple {23973#false} assume 0 == ~cond; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L290 TraceCheckUtils]: 43: Hoare triple {23973#false} assume !false; {23973#false} is VALID [2022-04-27 13:03:32,131 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 24 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2022-04-27 13:03:32,131 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:03:32,131 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:03:32,131 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1954659132] [2022-04-27 13:03:32,131 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:03:32,132 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1354238148] [2022-04-27 13:03:32,132 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1354238148] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:03:32,132 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:03:32,132 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:03:32,132 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1233598768] [2022-04-27 13:03:32,132 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:03:32,132 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 44 [2022-04-27 13:03:32,132 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:03:32,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:03:32,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:32,160 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:03:32,160 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:03:32,160 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:03:32,160 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:03:32,160 INFO L87 Difference]: Start difference. First operand 1072 states and 1543 transitions. Second operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:03:34,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:34,574 INFO L93 Difference]: Finished difference Result 1700 states and 2539 transitions. [2022-04-27 13:03:34,574 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:03:34,574 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 44 [2022-04-27 13:03:34,575 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:03:34,575 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:03:34,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-27 13:03:34,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:03:34,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-27 13:03:34,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-27 13:03:34,677 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:03:34,754 INFO L225 Difference]: With dead ends: 1700 [2022-04-27 13:03:34,754 INFO L226 Difference]: Without dead ends: 1234 [2022-04-27 13:03:34,755 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 41 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-27 13:03:34,756 INFO L413 NwaCegarLoop]: 62 mSDtfsCounter, 29 mSDsluCounter, 108 mSDsCounter, 0 mSdLazyCounter, 87 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 96 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 87 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 13:03:34,756 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 170 Invalid, 96 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 87 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 13:03:34,757 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1234 states. [2022-04-27 13:03:36,474 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1234 to 995. [2022-04-27 13:03:36,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:03:36,476 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1234 states. Second operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:36,478 INFO L74 IsIncluded]: Start isIncluded. First operand 1234 states. Second operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:36,479 INFO L87 Difference]: Start difference. First operand 1234 states. Second operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:36,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:36,570 INFO L93 Difference]: Finished difference Result 1234 states and 1815 transitions. [2022-04-27 13:03:36,570 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1815 transitions. [2022-04-27 13:03:36,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:36,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:36,576 INFO L74 IsIncluded]: Start isIncluded. First operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) Second operand 1234 states. [2022-04-27 13:03:36,578 INFO L87 Difference]: Start difference. First operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) Second operand 1234 states. [2022-04-27 13:03:36,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:03:36,669 INFO L93 Difference]: Finished difference Result 1234 states and 1815 transitions. [2022-04-27 13:03:36,669 INFO L276 IsEmpty]: Start isEmpty. Operand 1234 states and 1815 transitions. [2022-04-27 13:03:36,673 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:03:36,673 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:03:36,673 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:03:36,674 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:03:36,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 995 states, 660 states have (on average 1.3015151515151515) internal successors, (859), 690 states have internal predecessors, (859), 278 states have call successors, (278), 57 states have call predecessors, (278), 56 states have return successors, (271), 247 states have call predecessors, (271), 271 states have call successors, (271) [2022-04-27 13:03:36,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 995 states to 995 states and 1408 transitions. [2022-04-27 13:03:36,746 INFO L78 Accepts]: Start accepts. Automaton has 995 states and 1408 transitions. Word has length 44 [2022-04-27 13:03:36,747 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:03:36,747 INFO L495 AbstractCegarLoop]: Abstraction has 995 states and 1408 transitions. [2022-04-27 13:03:36,747 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 13:03:36,747 INFO L276 IsEmpty]: Start isEmpty. Operand 995 states and 1408 transitions. [2022-04-27 13:03:36,747 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-27 13:03:36,748 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:03:36,748 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:03:36,772 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-27 13:03:36,964 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-27 13:03:36,965 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:03:36,965 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:03:36,965 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-27 13:03:36,965 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:03:36,965 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1474471203] [2022-04-27 13:03:36,965 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:36,965 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:03:36,988 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:03:36,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [986437553] [2022-04-27 13:03:36,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:03:36,989 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:03:36,989 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:03:36,992 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:03:36,997 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-27 13:03:37,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:37,043 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 57 conjunts are in the unsatisfiable core [2022-04-27 13:03:37,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:03:37,057 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:03:37,823 INFO L272 TraceCheckUtils]: 0: Hoare triple {30652#true} call ULTIMATE.init(); {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L290 TraceCheckUtils]: 1: Hoare triple {30652#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; {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L290 TraceCheckUtils]: 2: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30652#true} {30652#true} #108#return; {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L272 TraceCheckUtils]: 4: Hoare triple {30652#true} call #t~ret9 := main(); {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L290 TraceCheckUtils]: 5: Hoare triple {30652#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L272 TraceCheckUtils]: 6: Hoare triple {30652#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:37,823 INFO L290 TraceCheckUtils]: 7: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L290 TraceCheckUtils]: 8: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30652#true} {30652#true} #94#return; {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L272 TraceCheckUtils]: 11: Hoare triple {30652#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L290 TraceCheckUtils]: 14: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30652#true} {30652#true} #96#return; {30652#true} is VALID [2022-04-27 13:03:37,824 INFO L290 TraceCheckUtils]: 16: Hoare triple {30652#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30705#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,825 INFO L290 TraceCheckUtils]: 17: Hoare triple {30705#(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; {30705#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,825 INFO L290 TraceCheckUtils]: 18: Hoare triple {30705#(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 < 100);havoc #t~post6; {30705#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,825 INFO L290 TraceCheckUtils]: 19: Hoare triple {30705#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30715#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,826 INFO L290 TraceCheckUtils]: 20: Hoare triple {30715#(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; {30715#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,826 INFO L290 TraceCheckUtils]: 21: Hoare triple {30715#(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 < 100);havoc #t~post7; {30715#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,827 INFO L290 TraceCheckUtils]: 22: Hoare triple {30715#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,827 INFO L290 TraceCheckUtils]: 23: Hoare triple {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,827 INFO L290 TraceCheckUtils]: 24: Hoare triple {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,827 INFO L272 TraceCheckUtils]: 25: Hoare triple {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:37,828 INFO L290 TraceCheckUtils]: 26: Hoare triple {30652#true} ~cond := #in~cond; {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:37,828 INFO L290 TraceCheckUtils]: 27: Hoare triple {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:37,828 INFO L290 TraceCheckUtils]: 28: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:37,829 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30725#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,829 INFO L272 TraceCheckUtils]: 30: Hoare triple {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:37,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {30652#true} ~cond := #in~cond; {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:37,830 INFO L290 TraceCheckUtils]: 32: Hoare triple {30738#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:37,830 INFO L290 TraceCheckUtils]: 33: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:03:37,831 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,831 INFO L272 TraceCheckUtils]: 35: Hoare triple {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:37,831 INFO L290 TraceCheckUtils]: 36: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:37,831 INFO L290 TraceCheckUtils]: 37: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:37,831 INFO L290 TraceCheckUtils]: 38: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:37,832 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30652#true} {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,832 INFO L272 TraceCheckUtils]: 40: Hoare triple {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:03:37,832 INFO L290 TraceCheckUtils]: 41: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:03:37,832 INFO L290 TraceCheckUtils]: 42: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:03:37,832 INFO L290 TraceCheckUtils]: 43: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:03:37,833 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {30652#true} {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,833 INFO L290 TraceCheckUtils]: 45: Hoare triple {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,833 INFO L290 TraceCheckUtils]: 46: Hoare triple {30749#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,834 INFO L290 TraceCheckUtils]: 47: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,834 INFO L290 TraceCheckUtils]: 48: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,835 INFO L290 TraceCheckUtils]: 49: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:03:37,835 INFO L290 TraceCheckUtils]: 50: Hoare triple {30801#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:37,836 INFO L290 TraceCheckUtils]: 51: Hoare triple {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:37,836 INFO L290 TraceCheckUtils]: 52: Hoare triple {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:37,839 INFO L290 TraceCheckUtils]: 53: Hoare triple {30814#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !(0 != ~b~0); {30824#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0))} is VALID [2022-04-27 13:03:37,840 INFO L272 TraceCheckUtils]: 54: Hoare triple {30824#(and (= (+ main_~s~0 main_~r~0) 0) (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:03:37,841 INFO L290 TraceCheckUtils]: 55: Hoare triple {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30832#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:03:37,841 INFO L290 TraceCheckUtils]: 56: Hoare triple {30832#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30653#false} is VALID [2022-04-27 13:03:37,841 INFO L290 TraceCheckUtils]: 57: Hoare triple {30653#false} assume !false; {30653#false} is VALID [2022-04-27 13:03:37,842 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 6 proven. 20 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 13:03:37,842 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:21,143 INFO L290 TraceCheckUtils]: 57: Hoare triple {30653#false} assume !false; {30653#false} is VALID [2022-04-27 13:04:21,144 INFO L290 TraceCheckUtils]: 56: Hoare triple {30832#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {30653#false} is VALID [2022-04-27 13:04:21,147 INFO L290 TraceCheckUtils]: 55: Hoare triple {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30832#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:04:21,148 INFO L272 TraceCheckUtils]: 54: Hoare triple {30848#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {30828#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:04:21,148 INFO L290 TraceCheckUtils]: 53: Hoare triple {30852#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {30848#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:04:21,149 INFO L290 TraceCheckUtils]: 52: Hoare triple {30852#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {30852#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:04:21,149 INFO L290 TraceCheckUtils]: 51: Hoare triple {30852#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30852#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:04:21,243 INFO L290 TraceCheckUtils]: 50: Hoare triple {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {30852#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:04:21,244 INFO L290 TraceCheckUtils]: 49: Hoare triple {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,245 INFO L290 TraceCheckUtils]: 48: Hoare triple {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,245 INFO L290 TraceCheckUtils]: 47: Hoare triple {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,309 INFO L290 TraceCheckUtils]: 46: Hoare triple {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {30862#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,310 INFO L290 TraceCheckUtils]: 45: Hoare triple {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,311 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {30652#true} {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,311 INFO L290 TraceCheckUtils]: 43: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:21,311 INFO L290 TraceCheckUtils]: 42: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:21,311 INFO L290 TraceCheckUtils]: 41: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:21,311 INFO L272 TraceCheckUtils]: 40: Hoare triple {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:21,312 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {30652#true} {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,312 INFO L290 TraceCheckUtils]: 38: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:21,312 INFO L290 TraceCheckUtils]: 37: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:21,312 INFO L290 TraceCheckUtils]: 36: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:21,313 INFO L272 TraceCheckUtils]: 35: Hoare triple {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:21,314 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30912#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {30875#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,314 INFO L290 TraceCheckUtils]: 33: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:21,314 INFO L290 TraceCheckUtils]: 32: Hoare triple {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:21,315 INFO L290 TraceCheckUtils]: 31: Hoare triple {30652#true} ~cond := #in~cond; {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:04:21,315 INFO L272 TraceCheckUtils]: 30: Hoare triple {30912#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:21,316 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {30912#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,316 INFO L290 TraceCheckUtils]: 28: Hoare triple {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:21,317 INFO L290 TraceCheckUtils]: 27: Hoare triple {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30742#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:04:21,317 INFO L290 TraceCheckUtils]: 26: Hoare triple {30652#true} ~cond := #in~cond; {30922#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:04:21,317 INFO L272 TraceCheckUtils]: 25: Hoare triple {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:21,318 INFO L290 TraceCheckUtils]: 24: Hoare triple {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,319 INFO L290 TraceCheckUtils]: 23: Hoare triple {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,320 INFO L290 TraceCheckUtils]: 22: Hoare triple {30951#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {30929#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:04:21,321 INFO L290 TraceCheckUtils]: 21: Hoare triple {30951#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {30951#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:04:21,321 INFO L290 TraceCheckUtils]: 20: Hoare triple {30951#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30951#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:04:21,322 INFO L290 TraceCheckUtils]: 19: Hoare triple {30652#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {30951#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 main_~b~0)))} is VALID [2022-04-27 13:04:21,322 INFO L290 TraceCheckUtils]: 18: Hoare triple {30652#true} assume !!(#t~post6 < 100);havoc #t~post6; {30652#true} is VALID [2022-04-27 13:04:21,322 INFO L290 TraceCheckUtils]: 17: Hoare triple {30652#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {30652#true} is VALID [2022-04-27 13:04:21,322 INFO L290 TraceCheckUtils]: 16: Hoare triple {30652#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {30652#true} is VALID [2022-04-27 13:04:21,322 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {30652#true} {30652#true} #96#return; {30652#true} is VALID [2022-04-27 13:04:21,322 INFO L290 TraceCheckUtils]: 14: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 13: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 12: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L272 TraceCheckUtils]: 11: Hoare triple {30652#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30652#true} {30652#true} #94#return; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 9: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 8: Hoare triple {30652#true} assume !(0 == ~cond); {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 7: Hoare triple {30652#true} ~cond := #in~cond; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L272 TraceCheckUtils]: 6: Hoare triple {30652#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {30652#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L272 TraceCheckUtils]: 4: Hoare triple {30652#true} call #t~ret9 := main(); {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30652#true} {30652#true} #108#return; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 2: Hoare triple {30652#true} assume true; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L290 TraceCheckUtils]: 1: Hoare triple {30652#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; {30652#true} is VALID [2022-04-27 13:04:21,323 INFO L272 TraceCheckUtils]: 0: Hoare triple {30652#true} call ULTIMATE.init(); {30652#true} is VALID [2022-04-27 13:04:21,324 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 9 proven. 17 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-27 13:04:21,324 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:21,324 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1474471203] [2022-04-27 13:04:21,324 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:21,324 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [986437553] [2022-04-27 13:04:21,324 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [986437553] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:21,324 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:21,324 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-27 13:04:21,324 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119325283] [2022-04-27 13:04:21,325 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:21,325 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-27 13:04:21,325 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:21,326 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:21,614 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 13:04:21,614 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-27 13:04:21,614 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:21,615 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-27 13:04:21,615 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=349, Unknown=0, NotChecked=0, Total=420 [2022-04-27 13:04:21,615 INFO L87 Difference]: Start difference. First operand 995 states and 1408 transitions. Second operand has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:38,333 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:43,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:43,236 INFO L93 Difference]: Finished difference Result 1413 states and 2015 transitions. [2022-04-27 13:04:43,236 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-27 13:04:43,236 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) Word has length 58 [2022-04-27 13:04:43,236 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:04:43,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:43,241 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 312 transitions. [2022-04-27 13:04:43,241 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:43,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 312 transitions. [2022-04-27 13:04:43,249 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 312 transitions. [2022-04-27 13:04:53,404 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 312 edges. 311 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:53,526 INFO L225 Difference]: With dead ends: 1413 [2022-04-27 13:04:53,527 INFO L226 Difference]: Without dead ends: 1405 [2022-04-27 13:04:53,527 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 274 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=261, Invalid=1299, Unknown=0, NotChecked=0, Total=1560 [2022-04-27 13:04:53,528 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 168 mSDsluCounter, 609 mSDsCounter, 0 mSdLazyCounter, 1360 mSolverCounterSat, 235 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 9.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 186 SdHoareTripleChecker+Valid, 669 SdHoareTripleChecker+Invalid, 1596 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 235 IncrementalHoareTripleChecker+Valid, 1360 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 9.5s IncrementalHoareTripleChecker+Time [2022-04-27 13:04:53,528 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [186 Valid, 669 Invalid, 1596 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [235 Valid, 1360 Invalid, 1 Unknown, 0 Unchecked, 9.5s Time] [2022-04-27 13:04:53,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1405 states. [2022-04-27 13:04:55,766 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1405 to 1226. [2022-04-27 13:04:55,766 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:04:55,768 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1405 states. Second operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,770 INFO L74 IsIncluded]: Start isIncluded. First operand 1405 states. Second operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,771 INFO L87 Difference]: Start difference. First operand 1405 states. Second operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:55,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:55,877 INFO L93 Difference]: Finished difference Result 1405 states and 1985 transitions. [2022-04-27 13:04:55,877 INFO L276 IsEmpty]: Start isEmpty. Operand 1405 states and 1985 transitions. [2022-04-27 13:04:55,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:55,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:55,885 INFO L74 IsIncluded]: Start isIncluded. First operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1405 states. [2022-04-27 13:04:55,886 INFO L87 Difference]: Start difference. First operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) Second operand 1405 states. [2022-04-27 13:04:55,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:04:55,993 INFO L93 Difference]: Finished difference Result 1405 states and 1985 transitions. [2022-04-27 13:04:55,993 INFO L276 IsEmpty]: Start isEmpty. Operand 1405 states and 1985 transitions. [2022-04-27 13:04:55,998 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:04:55,998 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:04:55,998 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:04:55,998 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:04:56,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1226 states, 845 states have (on average 1.2970414201183431) internal successors, (1096), 864 states have internal predecessors, (1096), 308 states have call successors, (308), 73 states have call predecessors, (308), 72 states have return successors, (303), 288 states have call predecessors, (303), 303 states have call successors, (303) [2022-04-27 13:04:56,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1226 states to 1226 states and 1707 transitions. [2022-04-27 13:04:56,102 INFO L78 Accepts]: Start accepts. Automaton has 1226 states and 1707 transitions. Word has length 58 [2022-04-27 13:04:56,104 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:04:56,104 INFO L495 AbstractCegarLoop]: Abstraction has 1226 states and 1707 transitions. [2022-04-27 13:04:56,104 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 18 states have (on average 2.9444444444444446) internal successors, (53), 19 states have internal predecessors, (53), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (11), 4 states have call predecessors, (11), 6 states have call successors, (11) [2022-04-27 13:04:56,104 INFO L276 IsEmpty]: Start isEmpty. Operand 1226 states and 1707 transitions. [2022-04-27 13:04:56,105 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-27 13:04:56,105 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:04:56,105 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:04:56,131 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-27 13:04:56,327 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-27 13:04:56,327 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:04:56,328 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:04:56,328 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 1 times [2022-04-27 13:04:56,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:04:56,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1826236459] [2022-04-27 13:04:56,328 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:56,328 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:04:56,339 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:04:56,339 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1872140967] [2022-04-27 13:04:56,339 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:04:56,340 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:04:56,340 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:04:56,340 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:04:56,343 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-27 13:04:56,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:56,387 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-27 13:04:56,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:04:56,402 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:04:56,720 INFO L272 TraceCheckUtils]: 0: Hoare triple {37762#true} call ULTIMATE.init(); {37762#true} is VALID [2022-04-27 13:04:56,720 INFO L290 TraceCheckUtils]: 1: Hoare triple {37762#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; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,720 INFO L290 TraceCheckUtils]: 2: Hoare triple {37770#(<= ~counter~0 0)} assume true; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,721 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {37770#(<= ~counter~0 0)} {37762#true} #108#return; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,721 INFO L272 TraceCheckUtils]: 4: Hoare triple {37770#(<= ~counter~0 0)} call #t~ret9 := main(); {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,721 INFO L290 TraceCheckUtils]: 5: Hoare triple {37770#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,722 INFO L272 TraceCheckUtils]: 6: Hoare triple {37770#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,722 INFO L290 TraceCheckUtils]: 7: Hoare triple {37770#(<= ~counter~0 0)} ~cond := #in~cond; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,722 INFO L290 TraceCheckUtils]: 8: Hoare triple {37770#(<= ~counter~0 0)} assume !(0 == ~cond); {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,722 INFO L290 TraceCheckUtils]: 9: Hoare triple {37770#(<= ~counter~0 0)} assume true; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,723 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37770#(<= ~counter~0 0)} {37770#(<= ~counter~0 0)} #94#return; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,723 INFO L272 TraceCheckUtils]: 11: Hoare triple {37770#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,723 INFO L290 TraceCheckUtils]: 12: Hoare triple {37770#(<= ~counter~0 0)} ~cond := #in~cond; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,724 INFO L290 TraceCheckUtils]: 13: Hoare triple {37770#(<= ~counter~0 0)} assume !(0 == ~cond); {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,724 INFO L290 TraceCheckUtils]: 14: Hoare triple {37770#(<= ~counter~0 0)} assume true; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,724 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37770#(<= ~counter~0 0)} {37770#(<= ~counter~0 0)} #96#return; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,725 INFO L290 TraceCheckUtils]: 16: Hoare triple {37770#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {37770#(<= ~counter~0 0)} is VALID [2022-04-27 13:04:56,725 INFO L290 TraceCheckUtils]: 17: Hoare triple {37770#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37819#(<= ~counter~0 1)} is VALID [2022-04-27 13:04:56,726 INFO L290 TraceCheckUtils]: 18: Hoare triple {37819#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {37819#(<= ~counter~0 1)} is VALID [2022-04-27 13:04:56,726 INFO L290 TraceCheckUtils]: 19: Hoare triple {37819#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37819#(<= ~counter~0 1)} is VALID [2022-04-27 13:04:56,726 INFO L290 TraceCheckUtils]: 20: Hoare triple {37819#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37829#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:56,727 INFO L290 TraceCheckUtils]: 21: Hoare triple {37829#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {37829#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:56,727 INFO L290 TraceCheckUtils]: 22: Hoare triple {37829#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {37829#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:56,727 INFO L290 TraceCheckUtils]: 23: Hoare triple {37829#(<= ~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; {37829#(<= ~counter~0 2)} is VALID [2022-04-27 13:04:56,728 INFO L290 TraceCheckUtils]: 24: Hoare triple {37829#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37842#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:56,728 INFO L290 TraceCheckUtils]: 25: Hoare triple {37842#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {37842#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:56,728 INFO L290 TraceCheckUtils]: 26: Hoare triple {37842#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {37842#(<= ~counter~0 3)} is VALID [2022-04-27 13:04:56,729 INFO L290 TraceCheckUtils]: 27: Hoare triple {37842#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37852#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:56,729 INFO L290 TraceCheckUtils]: 28: Hoare triple {37852#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {37852#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:56,729 INFO L290 TraceCheckUtils]: 29: Hoare triple {37852#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {37852#(<= ~counter~0 4)} is VALID [2022-04-27 13:04:56,730 INFO L290 TraceCheckUtils]: 30: Hoare triple {37852#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,730 INFO L290 TraceCheckUtils]: 31: Hoare triple {37862#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,730 INFO L272 TraceCheckUtils]: 32: Hoare triple {37862#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,731 INFO L290 TraceCheckUtils]: 33: Hoare triple {37862#(<= ~counter~0 5)} ~cond := #in~cond; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,731 INFO L290 TraceCheckUtils]: 34: Hoare triple {37862#(<= ~counter~0 5)} assume !(0 == ~cond); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,731 INFO L290 TraceCheckUtils]: 35: Hoare triple {37862#(<= ~counter~0 5)} assume true; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,732 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37862#(<= ~counter~0 5)} {37862#(<= ~counter~0 5)} #98#return; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,732 INFO L272 TraceCheckUtils]: 37: Hoare triple {37862#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,732 INFO L290 TraceCheckUtils]: 38: Hoare triple {37862#(<= ~counter~0 5)} ~cond := #in~cond; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,733 INFO L290 TraceCheckUtils]: 39: Hoare triple {37862#(<= ~counter~0 5)} assume !(0 == ~cond); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,733 INFO L290 TraceCheckUtils]: 40: Hoare triple {37862#(<= ~counter~0 5)} assume true; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,733 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37862#(<= ~counter~0 5)} {37862#(<= ~counter~0 5)} #100#return; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,734 INFO L272 TraceCheckUtils]: 42: Hoare triple {37862#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,734 INFO L290 TraceCheckUtils]: 43: Hoare triple {37862#(<= ~counter~0 5)} ~cond := #in~cond; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,734 INFO L290 TraceCheckUtils]: 44: Hoare triple {37862#(<= ~counter~0 5)} assume !(0 == ~cond); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,735 INFO L290 TraceCheckUtils]: 45: Hoare triple {37862#(<= ~counter~0 5)} assume true; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,735 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37862#(<= ~counter~0 5)} {37862#(<= ~counter~0 5)} #102#return; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,735 INFO L272 TraceCheckUtils]: 47: Hoare triple {37862#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,736 INFO L290 TraceCheckUtils]: 48: Hoare triple {37862#(<= ~counter~0 5)} ~cond := #in~cond; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,736 INFO L290 TraceCheckUtils]: 49: Hoare triple {37862#(<= ~counter~0 5)} assume !(0 == ~cond); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,736 INFO L290 TraceCheckUtils]: 50: Hoare triple {37862#(<= ~counter~0 5)} assume true; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,737 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {37862#(<= ~counter~0 5)} {37862#(<= ~counter~0 5)} #104#return; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,737 INFO L290 TraceCheckUtils]: 52: Hoare triple {37862#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,737 INFO L290 TraceCheckUtils]: 53: Hoare triple {37862#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37862#(<= ~counter~0 5)} is VALID [2022-04-27 13:04:56,738 INFO L290 TraceCheckUtils]: 54: Hoare triple {37862#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37935#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:56,738 INFO L290 TraceCheckUtils]: 55: Hoare triple {37935#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {37935#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:56,738 INFO L290 TraceCheckUtils]: 56: Hoare triple {37935#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {37935#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:56,738 INFO L290 TraceCheckUtils]: 57: Hoare triple {37935#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37935#(<= ~counter~0 6)} is VALID [2022-04-27 13:04:56,739 INFO L290 TraceCheckUtils]: 58: Hoare triple {37935#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37948#(<= |main_#t~post6| 6)} is VALID [2022-04-27 13:04:56,739 INFO L290 TraceCheckUtils]: 59: Hoare triple {37948#(<= |main_#t~post6| 6)} assume !(#t~post6 < 100);havoc #t~post6; {37763#false} is VALID [2022-04-27 13:04:56,739 INFO L272 TraceCheckUtils]: 60: Hoare triple {37763#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {37763#false} is VALID [2022-04-27 13:04:56,739 INFO L290 TraceCheckUtils]: 61: Hoare triple {37763#false} ~cond := #in~cond; {37763#false} is VALID [2022-04-27 13:04:56,739 INFO L290 TraceCheckUtils]: 62: Hoare triple {37763#false} assume 0 == ~cond; {37763#false} is VALID [2022-04-27 13:04:56,739 INFO L290 TraceCheckUtils]: 63: Hoare triple {37763#false} assume !false; {37763#false} is VALID [2022-04-27 13:04:56,739 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 13:04:56,740 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:04:57,093 INFO L290 TraceCheckUtils]: 63: Hoare triple {37763#false} assume !false; {37763#false} is VALID [2022-04-27 13:04:57,093 INFO L290 TraceCheckUtils]: 62: Hoare triple {37763#false} assume 0 == ~cond; {37763#false} is VALID [2022-04-27 13:04:57,093 INFO L290 TraceCheckUtils]: 61: Hoare triple {37763#false} ~cond := #in~cond; {37763#false} is VALID [2022-04-27 13:04:57,093 INFO L272 TraceCheckUtils]: 60: Hoare triple {37763#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {37763#false} is VALID [2022-04-27 13:04:57,094 INFO L290 TraceCheckUtils]: 59: Hoare triple {37976#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {37763#false} is VALID [2022-04-27 13:04:57,094 INFO L290 TraceCheckUtils]: 58: Hoare triple {37980#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {37976#(< |main_#t~post6| 100)} is VALID [2022-04-27 13:04:57,094 INFO L290 TraceCheckUtils]: 57: Hoare triple {37980#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {37980#(< ~counter~0 100)} is VALID [2022-04-27 13:04:57,095 INFO L290 TraceCheckUtils]: 56: Hoare triple {37980#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {37980#(< ~counter~0 100)} is VALID [2022-04-27 13:04:57,095 INFO L290 TraceCheckUtils]: 55: Hoare triple {37980#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {37980#(< ~counter~0 100)} is VALID [2022-04-27 13:04:57,096 INFO L290 TraceCheckUtils]: 54: Hoare triple {37993#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {37980#(< ~counter~0 100)} is VALID [2022-04-27 13:04:57,096 INFO L290 TraceCheckUtils]: 53: Hoare triple {37993#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,096 INFO L290 TraceCheckUtils]: 52: Hoare triple {37993#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,097 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {37762#true} {37993#(< ~counter~0 99)} #104#return; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,097 INFO L290 TraceCheckUtils]: 50: Hoare triple {37762#true} assume true; {37762#true} is VALID [2022-04-27 13:04:57,097 INFO L290 TraceCheckUtils]: 49: Hoare triple {37762#true} assume !(0 == ~cond); {37762#true} is VALID [2022-04-27 13:04:57,097 INFO L290 TraceCheckUtils]: 48: Hoare triple {37762#true} ~cond := #in~cond; {37762#true} is VALID [2022-04-27 13:04:57,097 INFO L272 TraceCheckUtils]: 47: Hoare triple {37993#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {37762#true} is VALID [2022-04-27 13:04:57,097 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {37762#true} {37993#(< ~counter~0 99)} #102#return; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,097 INFO L290 TraceCheckUtils]: 45: Hoare triple {37762#true} assume true; {37762#true} is VALID [2022-04-27 13:04:57,097 INFO L290 TraceCheckUtils]: 44: Hoare triple {37762#true} assume !(0 == ~cond); {37762#true} is VALID [2022-04-27 13:04:57,097 INFO L290 TraceCheckUtils]: 43: Hoare triple {37762#true} ~cond := #in~cond; {37762#true} is VALID [2022-04-27 13:04:57,098 INFO L272 TraceCheckUtils]: 42: Hoare triple {37993#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {37762#true} is VALID [2022-04-27 13:04:57,098 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {37762#true} {37993#(< ~counter~0 99)} #100#return; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,098 INFO L290 TraceCheckUtils]: 40: Hoare triple {37762#true} assume true; {37762#true} is VALID [2022-04-27 13:04:57,098 INFO L290 TraceCheckUtils]: 39: Hoare triple {37762#true} assume !(0 == ~cond); {37762#true} is VALID [2022-04-27 13:04:57,098 INFO L290 TraceCheckUtils]: 38: Hoare triple {37762#true} ~cond := #in~cond; {37762#true} is VALID [2022-04-27 13:04:57,098 INFO L272 TraceCheckUtils]: 37: Hoare triple {37993#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {37762#true} is VALID [2022-04-27 13:04:57,099 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {37762#true} {37993#(< ~counter~0 99)} #98#return; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,099 INFO L290 TraceCheckUtils]: 35: Hoare triple {37762#true} assume true; {37762#true} is VALID [2022-04-27 13:04:57,099 INFO L290 TraceCheckUtils]: 34: Hoare triple {37762#true} assume !(0 == ~cond); {37762#true} is VALID [2022-04-27 13:04:57,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {37762#true} ~cond := #in~cond; {37762#true} is VALID [2022-04-27 13:04:57,099 INFO L272 TraceCheckUtils]: 32: Hoare triple {37993#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {37762#true} is VALID [2022-04-27 13:04:57,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {37993#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,100 INFO L290 TraceCheckUtils]: 30: Hoare triple {38066#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {37993#(< ~counter~0 99)} is VALID [2022-04-27 13:04:57,100 INFO L290 TraceCheckUtils]: 29: Hoare triple {38066#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {38066#(< ~counter~0 98)} is VALID [2022-04-27 13:04:57,107 INFO L290 TraceCheckUtils]: 28: Hoare triple {38066#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {38066#(< ~counter~0 98)} is VALID [2022-04-27 13:04:57,108 INFO L290 TraceCheckUtils]: 27: Hoare triple {38076#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38066#(< ~counter~0 98)} is VALID [2022-04-27 13:04:57,108 INFO L290 TraceCheckUtils]: 26: Hoare triple {38076#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38076#(< ~counter~0 97)} is VALID [2022-04-27 13:04:57,108 INFO L290 TraceCheckUtils]: 25: Hoare triple {38076#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {38076#(< ~counter~0 97)} is VALID [2022-04-27 13:04:57,109 INFO L290 TraceCheckUtils]: 24: Hoare triple {38086#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38076#(< ~counter~0 97)} is VALID [2022-04-27 13:04:57,109 INFO L290 TraceCheckUtils]: 23: Hoare triple {38086#(< ~counter~0 96)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38086#(< ~counter~0 96)} is VALID [2022-04-27 13:04:57,110 INFO L290 TraceCheckUtils]: 22: Hoare triple {38086#(< ~counter~0 96)} assume !(~c~0 >= ~b~0); {38086#(< ~counter~0 96)} is VALID [2022-04-27 13:04:57,110 INFO L290 TraceCheckUtils]: 21: Hoare triple {38086#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {38086#(< ~counter~0 96)} is VALID [2022-04-27 13:04:57,111 INFO L290 TraceCheckUtils]: 20: Hoare triple {38099#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38086#(< ~counter~0 96)} is VALID [2022-04-27 13:04:57,111 INFO L290 TraceCheckUtils]: 19: Hoare triple {38099#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {38099#(< ~counter~0 95)} is VALID [2022-04-27 13:04:57,111 INFO L290 TraceCheckUtils]: 18: Hoare triple {38099#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {38099#(< ~counter~0 95)} is VALID [2022-04-27 13:04:57,112 INFO L290 TraceCheckUtils]: 17: Hoare triple {38109#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38099#(< ~counter~0 95)} is VALID [2022-04-27 13:04:57,112 INFO L290 TraceCheckUtils]: 16: Hoare triple {38109#(< ~counter~0 94)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,113 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {37762#true} {38109#(< ~counter~0 94)} #96#return; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,113 INFO L290 TraceCheckUtils]: 14: Hoare triple {37762#true} assume true; {37762#true} is VALID [2022-04-27 13:04:57,113 INFO L290 TraceCheckUtils]: 13: Hoare triple {37762#true} assume !(0 == ~cond); {37762#true} is VALID [2022-04-27 13:04:57,113 INFO L290 TraceCheckUtils]: 12: Hoare triple {37762#true} ~cond := #in~cond; {37762#true} is VALID [2022-04-27 13:04:57,113 INFO L272 TraceCheckUtils]: 11: Hoare triple {38109#(< ~counter~0 94)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {37762#true} is VALID [2022-04-27 13:04:57,114 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {37762#true} {38109#(< ~counter~0 94)} #94#return; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,114 INFO L290 TraceCheckUtils]: 9: Hoare triple {37762#true} assume true; {37762#true} is VALID [2022-04-27 13:04:57,114 INFO L290 TraceCheckUtils]: 8: Hoare triple {37762#true} assume !(0 == ~cond); {37762#true} is VALID [2022-04-27 13:04:57,114 INFO L290 TraceCheckUtils]: 7: Hoare triple {37762#true} ~cond := #in~cond; {37762#true} is VALID [2022-04-27 13:04:57,114 INFO L272 TraceCheckUtils]: 6: Hoare triple {38109#(< ~counter~0 94)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {37762#true} is VALID [2022-04-27 13:04:57,114 INFO L290 TraceCheckUtils]: 5: Hoare triple {38109#(< ~counter~0 94)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,115 INFO L272 TraceCheckUtils]: 4: Hoare triple {38109#(< ~counter~0 94)} call #t~ret9 := main(); {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,115 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38109#(< ~counter~0 94)} {37762#true} #108#return; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,115 INFO L290 TraceCheckUtils]: 2: Hoare triple {38109#(< ~counter~0 94)} assume true; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,116 INFO L290 TraceCheckUtils]: 1: Hoare triple {37762#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; {38109#(< ~counter~0 94)} is VALID [2022-04-27 13:04:57,116 INFO L272 TraceCheckUtils]: 0: Hoare triple {37762#true} call ULTIMATE.init(); {37762#true} is VALID [2022-04-27 13:04:57,117 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-27 13:04:57,117 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:04:57,117 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1826236459] [2022-04-27 13:04:57,117 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:04:57,117 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1872140967] [2022-04-27 13:04:57,117 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1872140967] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:04:57,117 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:04:57,118 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-27 13:04:57,118 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1691272137] [2022-04-27 13:04:57,119 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:04:57,120 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) Word has length 64 [2022-04-27 13:04:57,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:04:57,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:04:57,194 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:04:57,194 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-27 13:04:57,194 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:04:57,195 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-27 13:04:57,195 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-27 13:04:57,195 INFO L87 Difference]: Start difference. First operand 1226 states and 1707 transitions. Second operand has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:05:03,177 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:03,177 INFO L93 Difference]: Finished difference Result 2565 states and 3679 transitions. [2022-04-27 13:05:03,177 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-27 13:05:03,177 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) Word has length 64 [2022-04-27 13:05:03,178 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:05:03,178 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:05:03,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 367 transitions. [2022-04-27 13:05:03,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:05:03,185 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 367 transitions. [2022-04-27 13:05:03,185 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 367 transitions. [2022-04-27 13:05:03,499 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 367 edges. 367 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:03,796 INFO L225 Difference]: With dead ends: 2565 [2022-04-27 13:05:03,796 INFO L226 Difference]: Without dead ends: 2543 [2022-04-27 13:05:03,797 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=287, Invalid=525, Unknown=0, NotChecked=0, Total=812 [2022-04-27 13:05:03,797 INFO L413 NwaCegarLoop]: 85 mSDtfsCounter, 360 mSDsluCounter, 338 mSDsCounter, 0 mSdLazyCounter, 242 mSolverCounterSat, 173 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 360 SdHoareTripleChecker+Valid, 423 SdHoareTripleChecker+Invalid, 415 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 173 IncrementalHoareTripleChecker+Valid, 242 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-27 13:05:03,797 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [360 Valid, 423 Invalid, 415 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [173 Valid, 242 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-27 13:05:03,799 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2543 states. [2022-04-27 13:05:08,014 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2543 to 2406. [2022-04-27 13:05:08,015 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:05:08,018 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2543 states. Second operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:08,020 INFO L74 IsIncluded]: Start isIncluded. First operand 2543 states. Second operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:08,023 INFO L87 Difference]: Start difference. First operand 2543 states. Second operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:08,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:08,297 INFO L93 Difference]: Finished difference Result 2543 states and 3572 transitions. [2022-04-27 13:05:08,297 INFO L276 IsEmpty]: Start isEmpty. Operand 2543 states and 3572 transitions. [2022-04-27 13:05:08,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:08,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:08,308 INFO L74 IsIncluded]: Start isIncluded. First operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2543 states. [2022-04-27 13:05:08,310 INFO L87 Difference]: Start difference. First operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2543 states. [2022-04-27 13:05:08,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:08,586 INFO L93 Difference]: Finished difference Result 2543 states and 3572 transitions. [2022-04-27 13:05:08,586 INFO L276 IsEmpty]: Start isEmpty. Operand 2543 states and 3572 transitions. [2022-04-27 13:05:08,593 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:08,593 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:08,593 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:05:08,593 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:05:08,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2406 states, 1658 states have (on average 1.3094089264173703) internal successors, (2171), 1717 states have internal predecessors, (2171), 631 states have call successors, (631), 117 states have call predecessors, (631), 116 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:08,944 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2406 states to 2406 states and 3425 transitions. [2022-04-27 13:05:08,944 INFO L78 Accepts]: Start accepts. Automaton has 2406 states and 3425 transitions. Word has length 64 [2022-04-27 13:05:08,945 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:05:08,945 INFO L495 AbstractCegarLoop]: Abstraction has 2406 states and 3425 transitions. [2022-04-27 13:05:08,945 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 3.8333333333333335) internal successors, (69), 18 states have internal predecessors, (69), 6 states have call successors, (16), 5 states have call predecessors, (16), 4 states have return successors, (14), 4 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-27 13:05:08,945 INFO L276 IsEmpty]: Start isEmpty. Operand 2406 states and 3425 transitions. [2022-04-27 13:05:08,946 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-27 13:05:08,946 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:05:08,946 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:05:08,968 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 13:05:09,164 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 13:05:09,164 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:05:09,164 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:05:09,164 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-27 13:05:09,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:05:09,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [804873784] [2022-04-27 13:05:09,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:09,165 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:05:09,182 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:05:09,183 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1680945634] [2022-04-27 13:05:09,183 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:09,183 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:09,183 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:05:09,187 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 13:05:09,212 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 13:05:09,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:09,244 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-27 13:05:09,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:09,257 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:09,694 INFO L272 TraceCheckUtils]: 0: Hoare triple {50608#true} call ULTIMATE.init(); {50608#true} is VALID [2022-04-27 13:05:09,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {50608#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; {50608#true} is VALID [2022-04-27 13:05:09,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,694 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50608#true} {50608#true} #108#return; {50608#true} is VALID [2022-04-27 13:05:09,694 INFO L272 TraceCheckUtils]: 4: Hoare triple {50608#true} call #t~ret9 := main(); {50608#true} is VALID [2022-04-27 13:05:09,694 INFO L290 TraceCheckUtils]: 5: Hoare triple {50608#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {50608#true} is VALID [2022-04-27 13:05:09,694 INFO L272 TraceCheckUtils]: 6: Hoare triple {50608#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,695 INFO L290 TraceCheckUtils]: 7: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,695 INFO L290 TraceCheckUtils]: 8: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,695 INFO L290 TraceCheckUtils]: 9: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,695 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {50608#true} {50608#true} #94#return; {50608#true} is VALID [2022-04-27 13:05:09,695 INFO L272 TraceCheckUtils]: 11: Hoare triple {50608#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,695 INFO L290 TraceCheckUtils]: 12: Hoare triple {50608#true} ~cond := #in~cond; {50649#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:05:09,696 INFO L290 TraceCheckUtils]: 13: Hoare triple {50649#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {50653#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:05:09,696 INFO L290 TraceCheckUtils]: 14: Hoare triple {50653#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {50653#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:05:09,696 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {50653#(not (= |assume_abort_if_not_#in~cond| 0))} {50608#true} #96#return; {50660#(<= 1 main_~y~0)} is VALID [2022-04-27 13:05:09,697 INFO L290 TraceCheckUtils]: 16: Hoare triple {50660#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50664#(<= 1 main_~b~0)} is VALID [2022-04-27 13:05:09,697 INFO L290 TraceCheckUtils]: 17: Hoare triple {50664#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50664#(<= 1 main_~b~0)} is VALID [2022-04-27 13:05:09,698 INFO L290 TraceCheckUtils]: 18: Hoare triple {50664#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {50664#(<= 1 main_~b~0)} is VALID [2022-04-27 13:05:09,698 INFO L290 TraceCheckUtils]: 19: Hoare triple {50664#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50664#(<= 1 main_~b~0)} is VALID [2022-04-27 13:05:09,698 INFO L290 TraceCheckUtils]: 20: Hoare triple {50664#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50664#(<= 1 main_~b~0)} is VALID [2022-04-27 13:05:09,699 INFO L290 TraceCheckUtils]: 21: Hoare triple {50664#(<= 1 main_~b~0)} assume !!(#t~post7 < 100);havoc #t~post7; {50664#(<= 1 main_~b~0)} is VALID [2022-04-27 13:05:09,699 INFO L290 TraceCheckUtils]: 22: Hoare triple {50664#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,699 INFO L290 TraceCheckUtils]: 23: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,700 INFO L290 TraceCheckUtils]: 24: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,700 INFO L272 TraceCheckUtils]: 25: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,700 INFO L290 TraceCheckUtils]: 26: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,700 INFO L290 TraceCheckUtils]: 27: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,700 INFO L290 TraceCheckUtils]: 28: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,701 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {50608#true} {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,701 INFO L272 TraceCheckUtils]: 30: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,701 INFO L290 TraceCheckUtils]: 31: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,701 INFO L290 TraceCheckUtils]: 32: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,701 INFO L290 TraceCheckUtils]: 33: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,702 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {50608#true} {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,702 INFO L272 TraceCheckUtils]: 35: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,702 INFO L290 TraceCheckUtils]: 36: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,703 INFO L290 TraceCheckUtils]: 37: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,703 INFO L290 TraceCheckUtils]: 38: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,703 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {50608#true} {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,704 INFO L272 TraceCheckUtils]: 40: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,704 INFO L290 TraceCheckUtils]: 41: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,704 INFO L290 TraceCheckUtils]: 42: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,704 INFO L290 TraceCheckUtils]: 43: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,704 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {50608#true} {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,705 INFO L290 TraceCheckUtils]: 45: Hoare triple {50683#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,705 INFO L290 TraceCheckUtils]: 46: Hoare triple {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,706 INFO L290 TraceCheckUtils]: 47: Hoare triple {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,706 INFO L272 TraceCheckUtils]: 48: Hoare triple {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,706 INFO L290 TraceCheckUtils]: 49: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,706 INFO L290 TraceCheckUtils]: 50: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,706 INFO L290 TraceCheckUtils]: 51: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,707 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {50608#true} {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,707 INFO L272 TraceCheckUtils]: 53: Hoare triple {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,707 INFO L290 TraceCheckUtils]: 54: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,707 INFO L290 TraceCheckUtils]: 55: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,707 INFO L290 TraceCheckUtils]: 56: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,708 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {50608#true} {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,708 INFO L272 TraceCheckUtils]: 58: Hoare triple {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,709 INFO L290 TraceCheckUtils]: 59: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,709 INFO L290 TraceCheckUtils]: 60: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,709 INFO L290 TraceCheckUtils]: 61: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,709 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {50608#true} {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-27 13:05:09,710 INFO L272 TraceCheckUtils]: 63: Hoare triple {50753#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50808#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:09,711 INFO L290 TraceCheckUtils]: 64: Hoare triple {50808#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {50812#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:09,711 INFO L290 TraceCheckUtils]: 65: Hoare triple {50812#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {50609#false} is VALID [2022-04-27 13:05:09,711 INFO L290 TraceCheckUtils]: 66: Hoare triple {50609#false} assume !false; {50609#false} is VALID [2022-04-27 13:05:09,711 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-27 13:05:09,711 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:05:09,996 INFO L290 TraceCheckUtils]: 66: Hoare triple {50609#false} assume !false; {50609#false} is VALID [2022-04-27 13:05:09,997 INFO L290 TraceCheckUtils]: 65: Hoare triple {50812#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {50609#false} is VALID [2022-04-27 13:05:09,997 INFO L290 TraceCheckUtils]: 64: Hoare triple {50808#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {50812#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:09,998 INFO L272 TraceCheckUtils]: 63: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50808#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:09,998 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:09,998 INFO L290 TraceCheckUtils]: 61: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,998 INFO L290 TraceCheckUtils]: 60: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,998 INFO L290 TraceCheckUtils]: 59: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,998 INFO L272 TraceCheckUtils]: 58: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:09,999 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:09,999 INFO L290 TraceCheckUtils]: 56: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:09,999 INFO L290 TraceCheckUtils]: 55: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:09,999 INFO L290 TraceCheckUtils]: 54: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:09,999 INFO L272 TraceCheckUtils]: 53: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,000 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,000 INFO L290 TraceCheckUtils]: 51: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,000 INFO L290 TraceCheckUtils]: 50: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,000 INFO L290 TraceCheckUtils]: 49: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,000 INFO L272 TraceCheckUtils]: 48: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,000 INFO L290 TraceCheckUtils]: 47: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,001 INFO L290 TraceCheckUtils]: 46: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,002 INFO L290 TraceCheckUtils]: 45: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,003 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,003 INFO L290 TraceCheckUtils]: 43: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,003 INFO L290 TraceCheckUtils]: 42: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,003 INFO L290 TraceCheckUtils]: 41: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,003 INFO L272 TraceCheckUtils]: 40: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,004 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,004 INFO L290 TraceCheckUtils]: 38: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,004 INFO L290 TraceCheckUtils]: 37: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,004 INFO L290 TraceCheckUtils]: 36: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,004 INFO L272 TraceCheckUtils]: 35: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,004 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,004 INFO L290 TraceCheckUtils]: 33: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L290 TraceCheckUtils]: 32: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L290 TraceCheckUtils]: 31: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L272 TraceCheckUtils]: 30: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {50608#true} {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,005 INFO L290 TraceCheckUtils]: 28: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L290 TraceCheckUtils]: 27: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,005 INFO L272 TraceCheckUtils]: 25: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,006 INFO L290 TraceCheckUtils]: 24: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,006 INFO L290 TraceCheckUtils]: 23: Hoare triple {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,006 INFO L290 TraceCheckUtils]: 22: Hoare triple {50608#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50828#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-27 13:05:10,006 INFO L290 TraceCheckUtils]: 21: Hoare triple {50608#true} assume !!(#t~post7 < 100);havoc #t~post7; {50608#true} is VALID [2022-04-27 13:05:10,006 INFO L290 TraceCheckUtils]: 20: Hoare triple {50608#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50608#true} is VALID [2022-04-27 13:05:10,006 INFO L290 TraceCheckUtils]: 19: Hoare triple {50608#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 18: Hoare triple {50608#true} assume !!(#t~post6 < 100);havoc #t~post6; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 17: Hoare triple {50608#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 16: Hoare triple {50608#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {50608#true} {50608#true} #96#return; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 14: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L272 TraceCheckUtils]: 11: Hoare triple {50608#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {50608#true} {50608#true} #94#return; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 9: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {50608#true} assume !(0 == ~cond); {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {50608#true} ~cond := #in~cond; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L272 TraceCheckUtils]: 6: Hoare triple {50608#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 5: Hoare triple {50608#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L272 TraceCheckUtils]: 4: Hoare triple {50608#true} call #t~ret9 := main(); {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50608#true} {50608#true} #108#return; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {50608#true} assume true; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {50608#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; {50608#true} is VALID [2022-04-27 13:05:10,007 INFO L272 TraceCheckUtils]: 0: Hoare triple {50608#true} call ULTIMATE.init(); {50608#true} is VALID [2022-04-27 13:05:10,008 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-27 13:05:10,008 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:05:10,008 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [804873784] [2022-04-27 13:05:10,008 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:05:10,008 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1680945634] [2022-04-27 13:05:10,008 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1680945634] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 13:05:10,008 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 13:05:10,008 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-27 13:05:10,008 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2133676435] [2022-04-27 13:05:10,008 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:05:10,009 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-04-27 13:05:10,009 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:05:10,009 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:05:10,045 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:10,045 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:05:10,045 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:05:10,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:05:10,045 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-27 13:05:10,045 INFO L87 Difference]: Start difference. First operand 2406 states and 3425 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:05:14,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:14,821 INFO L93 Difference]: Finished difference Result 2467 states and 3485 transitions. [2022-04-27 13:05:14,821 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 13:05:14,821 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-04-27 13:05:14,821 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:05:14,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:05:14,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 13:05:14,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:05:14,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-27 13:05:14,823 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-27 13:05:14,864 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 13:05:15,104 INFO L225 Difference]: With dead ends: 2467 [2022-04-27 13:05:15,104 INFO L226 Difference]: Without dead ends: 2465 [2022-04-27 13:05:15,104 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 122 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-27 13:05:15,105 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 12 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 147 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:05:15,105 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 147 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:05:15,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2465 states. [2022-04-27 13:05:19,286 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2465 to 2442. [2022-04-27 13:05:19,286 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:05:19,293 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2465 states. Second operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:19,296 INFO L74 IsIncluded]: Start isIncluded. First operand 2465 states. Second operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:19,299 INFO L87 Difference]: Start difference. First operand 2465 states. Second operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:19,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:19,546 INFO L93 Difference]: Finished difference Result 2465 states and 3473 transitions. [2022-04-27 13:05:19,546 INFO L276 IsEmpty]: Start isEmpty. Operand 2465 states and 3473 transitions. [2022-04-27 13:05:19,552 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:19,552 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:19,556 INFO L74 IsIncluded]: Start isIncluded. First operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2465 states. [2022-04-27 13:05:19,558 INFO L87 Difference]: Start difference. First operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) Second operand 2465 states. [2022-04-27 13:05:19,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:19,815 INFO L93 Difference]: Finished difference Result 2465 states and 3473 transitions. [2022-04-27 13:05:19,815 INFO L276 IsEmpty]: Start isEmpty. Operand 2465 states and 3473 transitions. [2022-04-27 13:05:19,822 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:19,822 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:19,822 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:05:19,822 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:05:19,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2442 states, 1685 states have (on average 1.3032640949554897) internal successors, (2196), 1744 states have internal predecessors, (2196), 631 states have call successors, (631), 126 states have call predecessors, (631), 125 states have return successors, (623), 571 states have call predecessors, (623), 623 states have call successors, (623) [2022-04-27 13:05:20,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2442 states to 2442 states and 3450 transitions. [2022-04-27 13:05:20,210 INFO L78 Accepts]: Start accepts. Automaton has 2442 states and 3450 transitions. Word has length 67 [2022-04-27 13:05:20,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:05:20,210 INFO L495 AbstractCegarLoop]: Abstraction has 2442 states and 3450 transitions. [2022-04-27 13:05:20,210 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-27 13:05:20,210 INFO L276 IsEmpty]: Start isEmpty. Operand 2442 states and 3450 transitions. [2022-04-27 13:05:20,215 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-27 13:05:20,215 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:05:20,215 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:05:20,238 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:05:20,435 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:05:20,435 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:05:20,435 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:05:20,435 INFO L85 PathProgramCache]: Analyzing trace with hash -958869778, now seen corresponding path program 1 times [2022-04-27 13:05:20,435 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:05:20,436 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [935893548] [2022-04-27 13:05:20,436 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:20,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:05:20,452 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:05:20,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [643767048] [2022-04-27 13:05:20,452 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:20,452 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:20,452 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:05:20,453 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:05:20,460 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:05:20,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:20,513 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-27 13:05:20,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:20,526 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:20,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {63177#true} call ULTIMATE.init(); {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {63177#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; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 2: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {63177#true} {63177#true} #108#return; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L272 TraceCheckUtils]: 4: Hoare triple {63177#true} call #t~ret9 := main(); {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 5: Hoare triple {63177#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L272 TraceCheckUtils]: 6: Hoare triple {63177#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 7: Hoare triple {63177#true} ~cond := #in~cond; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 8: Hoare triple {63177#true} assume !(0 == ~cond); {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 9: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {63177#true} {63177#true} #94#return; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L272 TraceCheckUtils]: 11: Hoare triple {63177#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 12: Hoare triple {63177#true} ~cond := #in~cond; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 13: Hoare triple {63177#true} assume !(0 == ~cond); {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L290 TraceCheckUtils]: 14: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,721 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {63177#true} {63177#true} #96#return; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 16: Hoare triple {63177#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 17: Hoare triple {63177#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 18: Hoare triple {63177#true} assume !!(#t~post6 < 100);havoc #t~post6; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 19: Hoare triple {63177#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 20: Hoare triple {63177#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 21: Hoare triple {63177#true} assume !!(#t~post7 < 100);havoc #t~post7; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 22: Hoare triple {63177#true} assume !(~c~0 >= ~b~0); {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 23: Hoare triple {63177#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 24: Hoare triple {63177#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 25: Hoare triple {63177#true} assume !!(#t~post6 < 100);havoc #t~post6; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 26: Hoare triple {63177#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 27: Hoare triple {63177#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 28: Hoare triple {63177#true} assume !!(#t~post7 < 100);havoc #t~post7; {63177#true} is VALID [2022-04-27 13:05:20,722 INFO L290 TraceCheckUtils]: 29: Hoare triple {63177#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,723 INFO L290 TraceCheckUtils]: 30: Hoare triple {63269#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,723 INFO L290 TraceCheckUtils]: 31: Hoare triple {63269#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 100);havoc #t~post8; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,723 INFO L272 TraceCheckUtils]: 32: Hoare triple {63269#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {63177#true} is VALID [2022-04-27 13:05:20,723 INFO L290 TraceCheckUtils]: 33: Hoare triple {63177#true} ~cond := #in~cond; {63177#true} is VALID [2022-04-27 13:05:20,723 INFO L290 TraceCheckUtils]: 34: Hoare triple {63177#true} assume !(0 == ~cond); {63177#true} is VALID [2022-04-27 13:05:20,723 INFO L290 TraceCheckUtils]: 35: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,728 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {63177#true} {63269#(<= main_~v~0 main_~b~0)} #98#return; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,728 INFO L272 TraceCheckUtils]: 37: Hoare triple {63269#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {63177#true} is VALID [2022-04-27 13:05:20,728 INFO L290 TraceCheckUtils]: 38: Hoare triple {63177#true} ~cond := #in~cond; {63177#true} is VALID [2022-04-27 13:05:20,728 INFO L290 TraceCheckUtils]: 39: Hoare triple {63177#true} assume !(0 == ~cond); {63177#true} is VALID [2022-04-27 13:05:20,728 INFO L290 TraceCheckUtils]: 40: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,729 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {63177#true} {63269#(<= main_~v~0 main_~b~0)} #100#return; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,729 INFO L272 TraceCheckUtils]: 42: Hoare triple {63269#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {63177#true} is VALID [2022-04-27 13:05:20,729 INFO L290 TraceCheckUtils]: 43: Hoare triple {63177#true} ~cond := #in~cond; {63177#true} is VALID [2022-04-27 13:05:20,729 INFO L290 TraceCheckUtils]: 44: Hoare triple {63177#true} assume !(0 == ~cond); {63177#true} is VALID [2022-04-27 13:05:20,729 INFO L290 TraceCheckUtils]: 45: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,730 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {63177#true} {63269#(<= main_~v~0 main_~b~0)} #102#return; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,730 INFO L272 TraceCheckUtils]: 47: Hoare triple {63269#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {63177#true} is VALID [2022-04-27 13:05:20,730 INFO L290 TraceCheckUtils]: 48: Hoare triple {63177#true} ~cond := #in~cond; {63177#true} is VALID [2022-04-27 13:05:20,730 INFO L290 TraceCheckUtils]: 49: Hoare triple {63177#true} assume !(0 == ~cond); {63177#true} is VALID [2022-04-27 13:05:20,730 INFO L290 TraceCheckUtils]: 50: Hoare triple {63177#true} assume true; {63177#true} is VALID [2022-04-27 13:05:20,731 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {63177#true} {63269#(<= main_~v~0 main_~b~0)} #104#return; {63269#(<= main_~v~0 main_~b~0)} is VALID [2022-04-27 13:05:20,731 INFO L290 TraceCheckUtils]: 52: Hoare triple {63269#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {63339#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-27 13:05:20,732 INFO L290 TraceCheckUtils]: 53: Hoare triple {63339#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {63343#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:05:20,732 INFO L290 TraceCheckUtils]: 54: Hoare triple {63343#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {63343#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:05:20,733 INFO L290 TraceCheckUtils]: 55: Hoare triple {63343#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 100);havoc #t~post7; {63343#(< main_~c~0 main_~b~0)} is VALID [2022-04-27 13:05:20,733 INFO L290 TraceCheckUtils]: 56: Hoare triple {63343#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {63178#false} is VALID [2022-04-27 13:05:20,733 INFO L290 TraceCheckUtils]: 57: Hoare triple {63178#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {63178#false} is VALID [2022-04-27 13:05:20,733 INFO L290 TraceCheckUtils]: 58: Hoare triple {63178#false} assume !!(#t~post8 < 100);havoc #t~post8; {63178#false} is VALID [2022-04-27 13:05:20,733 INFO L272 TraceCheckUtils]: 59: Hoare triple {63178#false} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {63178#false} is VALID [2022-04-27 13:05:20,733 INFO L290 TraceCheckUtils]: 60: Hoare triple {63178#false} ~cond := #in~cond; {63178#false} is VALID [2022-04-27 13:05:20,733 INFO L290 TraceCheckUtils]: 61: Hoare triple {63178#false} assume !(0 == ~cond); {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 62: Hoare triple {63178#false} assume true; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {63178#false} {63178#false} #98#return; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L272 TraceCheckUtils]: 64: Hoare triple {63178#false} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 65: Hoare triple {63178#false} ~cond := #in~cond; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 66: Hoare triple {63178#false} assume !(0 == ~cond); {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 67: Hoare triple {63178#false} assume true; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {63178#false} {63178#false} #100#return; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L272 TraceCheckUtils]: 69: Hoare triple {63178#false} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 70: Hoare triple {63178#false} ~cond := #in~cond; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 71: Hoare triple {63178#false} assume 0 == ~cond; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L290 TraceCheckUtils]: 72: Hoare triple {63178#false} assume !false; {63178#false} is VALID [2022-04-27 13:05:20,734 INFO L134 CoverageAnalysis]: Checked inductivity of 93 backedges. 51 proven. 0 refuted. 0 times theorem prover too weak. 42 trivial. 0 not checked. [2022-04-27 13:05:20,735 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 13:05:20,735 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:05:20,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [935893548] [2022-04-27 13:05:20,735 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:05:20,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [643767048] [2022-04-27 13:05:20,735 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [643767048] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 13:05:20,735 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 13:05:20,735 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 13:05:20,735 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1385132982] [2022-04-27 13:05:20,735 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 13:05:20,736 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 73 [2022-04-27 13:05:20,736 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:05:20,736 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 13:05:20,785 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:05:20,785 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 13:05:20,785 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:05:20,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 13:05:20,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 13:05:20,785 INFO L87 Difference]: Start difference. First operand 2442 states and 3450 transitions. Second operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 13:05:25,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:25,839 INFO L93 Difference]: Finished difference Result 4377 states and 6175 transitions. [2022-04-27 13:05:25,839 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 13:05:25,839 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) Word has length 73 [2022-04-27 13:05:25,840 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:05:25,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 13:05:25,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 13:05:25,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 13:05:25,841 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-27 13:05:25,841 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-27 13:05:25,915 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 13:05:26,226 INFO L225 Difference]: With dead ends: 4377 [2022-04-27 13:05:26,227 INFO L226 Difference]: Without dead ends: 2578 [2022-04-27 13:05:26,230 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 74 GetRequests, 70 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 13:05:26,231 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:05:26,231 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 121 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 13:05:26,233 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2578 states. [2022-04-27 13:05:30,208 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2578 to 2372. [2022-04-27 13:05:30,209 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:05:30,212 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2578 states. Second operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:05:30,215 INFO L74 IsIncluded]: Start isIncluded. First operand 2578 states. Second operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:05:30,217 INFO L87 Difference]: Start difference. First operand 2578 states. Second operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:05:30,489 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:30,489 INFO L93 Difference]: Finished difference Result 2578 states and 3563 transitions. [2022-04-27 13:05:30,489 INFO L276 IsEmpty]: Start isEmpty. Operand 2578 states and 3563 transitions. [2022-04-27 13:05:30,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:30,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:30,499 INFO L74 IsIncluded]: Start isIncluded. First operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) Second operand 2578 states. [2022-04-27 13:05:30,502 INFO L87 Difference]: Start difference. First operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) Second operand 2578 states. [2022-04-27 13:05:30,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:05:30,777 INFO L93 Difference]: Finished difference Result 2578 states and 3563 transitions. [2022-04-27 13:05:30,777 INFO L276 IsEmpty]: Start isEmpty. Operand 2578 states and 3563 transitions. [2022-04-27 13:05:30,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:05:30,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:05:30,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:05:30,783 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:05:30,787 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2372 states, 1689 states have (on average 1.2948490230905862) internal successors, (2187), 1720 states have internal predecessors, (2187), 559 states have call successors, (559), 124 states have call predecessors, (559), 123 states have return successors, (551), 527 states have call predecessors, (551), 551 states have call successors, (551) [2022-04-27 13:05:31,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2372 states to 2372 states and 3297 transitions. [2022-04-27 13:05:31,138 INFO L78 Accepts]: Start accepts. Automaton has 2372 states and 3297 transitions. Word has length 73 [2022-04-27 13:05:31,139 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:05:31,139 INFO L495 AbstractCegarLoop]: Abstraction has 2372 states and 3297 transitions. [2022-04-27 13:05:31,139 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.4) internal successors, (32), 5 states have internal predecessors, (32), 3 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 3 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-27 13:05:31,139 INFO L276 IsEmpty]: Start isEmpty. Operand 2372 states and 3297 transitions. [2022-04-27 13:05:31,140 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-27 13:05:31,140 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:05:31,140 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:05:31,169 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-27 13:05:31,363 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:31,364 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:05:31,364 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:05:31,364 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 2 times [2022-04-27 13:05:31,364 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:05:31,364 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1423437746] [2022-04-27 13:05:31,364 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:05:31,364 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:05:31,378 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:05:31,379 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2070458286] [2022-04-27 13:05:31,379 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:05:31,379 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:05:31,379 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:05:31,381 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:05:31,389 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-27 13:05:31,451 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:05:31,452 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:05:31,453 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 82 conjunts are in the unsatisfiable core [2022-04-27 13:05:31,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:05:31,473 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:05:33,325 INFO L272 TraceCheckUtils]: 0: Hoare triple {78335#true} call ULTIMATE.init(); {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L290 TraceCheckUtils]: 1: Hoare triple {78335#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; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L290 TraceCheckUtils]: 2: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78335#true} {78335#true} #108#return; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L272 TraceCheckUtils]: 4: Hoare triple {78335#true} call #t~ret9 := main(); {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L290 TraceCheckUtils]: 5: Hoare triple {78335#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L272 TraceCheckUtils]: 6: Hoare triple {78335#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L290 TraceCheckUtils]: 7: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78335#true} {78335#true} #94#return; {78335#true} is VALID [2022-04-27 13:05:33,325 INFO L272 TraceCheckUtils]: 11: Hoare triple {78335#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {78335#true} ~cond := #in~cond; {78376#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 13:05:33,326 INFO L290 TraceCheckUtils]: 13: Hoare triple {78376#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {78380#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:05:33,326 INFO L290 TraceCheckUtils]: 14: Hoare triple {78380#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {78380#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 13:05:33,327 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78380#(not (= |assume_abort_if_not_#in~cond| 0))} {78335#true} #96#return; {78387#(<= 1 main_~y~0)} is VALID [2022-04-27 13:05:33,327 INFO L290 TraceCheckUtils]: 16: Hoare triple {78387#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {78391#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,327 INFO L290 TraceCheckUtils]: 17: Hoare triple {78391#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78391#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {78391#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {78391#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,328 INFO L290 TraceCheckUtils]: 19: Hoare triple {78391#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78401#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {78401#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78401#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,329 INFO L290 TraceCheckUtils]: 21: Hoare triple {78401#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {78401#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,329 INFO L290 TraceCheckUtils]: 22: Hoare triple {78401#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {78411#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,330 INFO L290 TraceCheckUtils]: 23: Hoare triple {78411#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {78415#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,330 INFO L290 TraceCheckUtils]: 24: Hoare triple {78415#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78415#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,331 INFO L290 TraceCheckUtils]: 25: Hoare triple {78415#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {78415#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,331 INFO L290 TraceCheckUtils]: 26: Hoare triple {78415#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78425#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,332 INFO L290 TraceCheckUtils]: 27: Hoare triple {78425#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78425#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,332 INFO L290 TraceCheckUtils]: 28: Hoare triple {78425#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 100);havoc #t~post7; {78425#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,332 INFO L290 TraceCheckUtils]: 29: Hoare triple {78425#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,333 INFO L290 TraceCheckUtils]: 30: Hoare triple {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,333 INFO L290 TraceCheckUtils]: 31: Hoare triple {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post8 < 100);havoc #t~post8; {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-27 13:05:33,333 INFO L272 TraceCheckUtils]: 32: Hoare triple {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,334 INFO L290 TraceCheckUtils]: 33: Hoare triple {78335#true} ~cond := #in~cond; {78448#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:33,334 INFO L290 TraceCheckUtils]: 34: Hoare triple {78448#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:33,334 INFO L290 TraceCheckUtils]: 35: Hoare triple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:33,336 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} {78435#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0))} #98#return; {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,336 INFO L272 TraceCheckUtils]: 37: Hoare triple {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,336 INFO L290 TraceCheckUtils]: 38: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:05:33,336 INFO L290 TraceCheckUtils]: 39: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:05:33,336 INFO L290 TraceCheckUtils]: 40: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:05:33,337 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {78335#true} {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,337 INFO L272 TraceCheckUtils]: 42: Hoare triple {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,337 INFO L290 TraceCheckUtils]: 43: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:05:33,337 INFO L290 TraceCheckUtils]: 44: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:05:33,337 INFO L290 TraceCheckUtils]: 45: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:05:33,338 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {78335#true} {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,338 INFO L272 TraceCheckUtils]: 47: Hoare triple {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,338 INFO L290 TraceCheckUtils]: 48: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:05:33,338 INFO L290 TraceCheckUtils]: 49: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:05:33,338 INFO L290 TraceCheckUtils]: 50: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:05:33,339 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {78335#true} {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,339 INFO L290 TraceCheckUtils]: 52: Hoare triple {78459#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (<= 1 main_~y~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {78508#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (< main_~c~0 (* main_~v~0 2)) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,340 INFO L290 TraceCheckUtils]: 53: Hoare triple {78508#(and (= main_~b~0 main_~v~0) (< main_~x~0 main_~c~0) (< main_~c~0 (* main_~v~0 2)) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,341 INFO L290 TraceCheckUtils]: 54: Hoare triple {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,341 INFO L290 TraceCheckUtils]: 55: Hoare triple {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,343 INFO L290 TraceCheckUtils]: 56: Hoare triple {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:05:33,345 INFO L290 TraceCheckUtils]: 57: Hoare triple {78512#(and (< (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 2)) (= main_~s~0 0) (= main_~p~0 0) (< main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,346 INFO L290 TraceCheckUtils]: 58: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,346 INFO L290 TraceCheckUtils]: 59: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,347 INFO L290 TraceCheckUtils]: 60: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,347 INFO L290 TraceCheckUtils]: 61: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,348 INFO L290 TraceCheckUtils]: 62: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,348 INFO L290 TraceCheckUtils]: 63: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,349 INFO L290 TraceCheckUtils]: 64: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,349 INFO L290 TraceCheckUtils]: 65: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:05:33,349 INFO L272 TraceCheckUtils]: 66: Hoare triple {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:05:33,349 INFO L290 TraceCheckUtils]: 67: Hoare triple {78335#true} ~cond := #in~cond; {78448#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:33,350 INFO L290 TraceCheckUtils]: 68: Hoare triple {78448#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:33,350 INFO L290 TraceCheckUtils]: 69: Hoare triple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:05:33,351 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} {78525#(and (= main_~r~0 0) (= (+ main_~s~0 main_~r~0) 1) (< main_~x~0 main_~y~0) (< main_~y~0 (* main_~a~0 2)) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= main_~a~0 main_~x~0) (= (+ main_~q~0 main_~p~0) 0) (= main_~p~0 1))} #98#return; {78565#(and (< (* main_~b~0 2) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ main_~q~0 1) 0))} is VALID [2022-04-27 13:05:33,352 INFO L272 TraceCheckUtils]: 71: Hoare triple {78565#(and (< (* main_~b~0 2) main_~y~0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (< main_~x~0 main_~y~0) (= (+ main_~q~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {78569#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:05:33,352 INFO L290 TraceCheckUtils]: 72: Hoare triple {78569#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {78573#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:05:33,352 INFO L290 TraceCheckUtils]: 73: Hoare triple {78573#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {78336#false} is VALID [2022-04-27 13:05:33,352 INFO L290 TraceCheckUtils]: 74: Hoare triple {78336#false} assume !false; {78336#false} is VALID [2022-04-27 13:05:33,353 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 20 proven. 43 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2022-04-27 13:05:33,353 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:06:24,733 INFO L290 TraceCheckUtils]: 74: Hoare triple {78336#false} assume !false; {78336#false} is VALID [2022-04-27 13:06:24,733 INFO L290 TraceCheckUtils]: 73: Hoare triple {78573#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {78336#false} is VALID [2022-04-27 13:06:24,734 INFO L290 TraceCheckUtils]: 72: Hoare triple {78569#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {78573#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:06:24,734 INFO L272 TraceCheckUtils]: 71: Hoare triple {78589#(= 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)); {78569#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:06:24,735 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {78589#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:06:24,735 INFO L290 TraceCheckUtils]: 69: Hoare triple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:24,736 INFO L290 TraceCheckUtils]: 68: Hoare triple {78603#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:24,736 INFO L290 TraceCheckUtils]: 67: Hoare triple {78335#true} ~cond := #in~cond; {78603#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:06:24,736 INFO L272 TraceCheckUtils]: 66: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,737 INFO L290 TraceCheckUtils]: 65: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 100);havoc #t~post8; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,737 INFO L290 TraceCheckUtils]: 64: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,737 INFO L290 TraceCheckUtils]: 63: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,738 INFO L290 TraceCheckUtils]: 62: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 100);havoc #t~post7; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,738 INFO L290 TraceCheckUtils]: 61: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,739 INFO L290 TraceCheckUtils]: 60: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,739 INFO L290 TraceCheckUtils]: 59: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 100);havoc #t~post6; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,739 INFO L290 TraceCheckUtils]: 58: Hoare triple {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,756 INFO L290 TraceCheckUtils]: 57: Hoare triple {78634#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {78593#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-27 13:06:24,756 INFO L290 TraceCheckUtils]: 56: Hoare triple {78634#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= ~b~0); {78634#(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 13:06:24,757 INFO L290 TraceCheckUtils]: 55: Hoare triple {78634#(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 < 100);havoc #t~post7; {78634#(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 13:06:24,757 INFO L290 TraceCheckUtils]: 54: Hoare triple {78634#(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; {78634#(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 13:06:24,762 INFO L290 TraceCheckUtils]: 53: Hoare triple {78647#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {78634#(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 13:06:24,762 INFO L290 TraceCheckUtils]: 52: Hoare triple {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !(~c~0 >= 2 * ~v~0); {78647#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,763 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {78335#true} {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #104#return; {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,763 INFO L290 TraceCheckUtils]: 50: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:06:24,763 INFO L290 TraceCheckUtils]: 49: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:06:24,763 INFO L290 TraceCheckUtils]: 48: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:06:24,763 INFO L272 TraceCheckUtils]: 47: Hoare triple {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,764 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {78335#true} {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #102#return; {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,764 INFO L290 TraceCheckUtils]: 45: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:06:24,764 INFO L290 TraceCheckUtils]: 44: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:06:24,764 INFO L290 TraceCheckUtils]: 43: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:06:24,764 INFO L272 TraceCheckUtils]: 42: Hoare triple {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,765 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {78335#true} {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #100#return; {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,766 INFO L290 TraceCheckUtils]: 40: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:06:24,766 INFO L290 TraceCheckUtils]: 39: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:06:24,766 INFO L290 TraceCheckUtils]: 38: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:06:24,766 INFO L272 TraceCheckUtils]: 37: Hoare triple {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,767 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #98#return; {78651#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,768 INFO L290 TraceCheckUtils]: 35: Hoare triple {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:24,768 INFO L290 TraceCheckUtils]: 34: Hoare triple {78603#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {78452#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:06:24,769 INFO L290 TraceCheckUtils]: 33: Hoare triple {78335#true} ~cond := #in~cond; {78603#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:06:24,769 INFO L272 TraceCheckUtils]: 32: Hoare triple {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,769 INFO L290 TraceCheckUtils]: 31: Hoare triple {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post8 < 100);havoc #t~post8; {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,770 INFO L290 TraceCheckUtils]: 30: Hoare triple {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,771 INFO L290 TraceCheckUtils]: 29: Hoare triple {78722#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {78700#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (<= (* main_~v~0 2) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,772 INFO L290 TraceCheckUtils]: 28: Hoare triple {78722#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post7 < 100);havoc #t~post7; {78722#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,773 INFO L290 TraceCheckUtils]: 27: Hoare triple {78722#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78722#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 26: Hoare triple {78335#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78722#(or (<= (* main_~b~0 2) main_~c~0) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 25: Hoare triple {78335#true} assume !!(#t~post6 < 100);havoc #t~post6; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 24: Hoare triple {78335#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 23: Hoare triple {78335#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 22: Hoare triple {78335#true} assume !(~c~0 >= ~b~0); {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 21: Hoare triple {78335#true} assume !!(#t~post7 < 100);havoc #t~post7; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {78335#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 19: Hoare triple {78335#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 18: Hoare triple {78335#true} assume !!(#t~post6 < 100);havoc #t~post6; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 17: Hoare triple {78335#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 16: Hoare triple {78335#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {78335#true} {78335#true} #96#return; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 14: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:06:24,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 12: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L272 TraceCheckUtils]: 11: Hoare triple {78335#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78335#true} {78335#true} #94#return; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 8: Hoare triple {78335#true} assume !(0 == ~cond); {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 7: Hoare triple {78335#true} ~cond := #in~cond; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L272 TraceCheckUtils]: 6: Hoare triple {78335#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 5: Hoare triple {78335#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L272 TraceCheckUtils]: 4: Hoare triple {78335#true} call #t~ret9 := main(); {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78335#true} {78335#true} #108#return; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 2: Hoare triple {78335#true} assume true; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L290 TraceCheckUtils]: 1: Hoare triple {78335#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; {78335#true} is VALID [2022-04-27 13:06:24,775 INFO L272 TraceCheckUtils]: 0: Hoare triple {78335#true} call ULTIMATE.init(); {78335#true} is VALID [2022-04-27 13:06:24,776 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 36 proven. 21 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-27 13:06:24,776 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:06:24,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1423437746] [2022-04-27 13:06:24,776 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:06:24,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2070458286] [2022-04-27 13:06:24,776 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2070458286] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:06:24,776 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:06:24,776 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 13] total 28 [2022-04-27 13:06:24,777 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1071766237] [2022-04-27 13:06:24,777 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:06:24,777 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 75 [2022-04-27 13:06:24,777 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:06:24,778 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:06:24,922 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:06:24,922 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-27 13:06:24,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:06:24,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-27 13:06:24,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=631, Unknown=0, NotChecked=0, Total=756 [2022-04-27 13:06:24,923 INFO L87 Difference]: Start difference. First operand 2372 states and 3297 transitions. Second operand has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:06:42,638 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:44,640 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,988 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:56,141 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:07:06,690 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:06,690 INFO L93 Difference]: Finished difference Result 2869 states and 3894 transitions. [2022-04-27 13:07:06,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2022-04-27 13:07:06,690 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) Word has length 75 [2022-04-27 13:07:06,690 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:07:06,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:07:06,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 245 transitions. [2022-04-27 13:07:06,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:07:06,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 245 transitions. [2022-04-27 13:07:06,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 245 transitions. [2022-04-27 13:07:07,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:07:07,729 INFO L225 Difference]: With dead ends: 2869 [2022-04-27 13:07:07,729 INFO L226 Difference]: Without dead ends: 2863 [2022-04-27 13:07:07,731 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 130 SyntacticMatches, 2 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 607 ImplicationChecksByTransitivity, 6.4s TimeCoverageRelationStatistics Valid=469, Invalid=1981, Unknown=0, NotChecked=0, Total=2450 [2022-04-27 13:07:07,731 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 291 mSDsluCounter, 576 mSDsCounter, 0 mSdLazyCounter, 1149 mSolverCounterSat, 295 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 18.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 297 SdHoareTripleChecker+Valid, 637 SdHoareTripleChecker+Invalid, 1448 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 295 IncrementalHoareTripleChecker+Valid, 1149 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 18.8s IncrementalHoareTripleChecker+Time [2022-04-27 13:07:07,731 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [297 Valid, 637 Invalid, 1448 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [295 Valid, 1149 Invalid, 4 Unknown, 0 Unchecked, 18.8s Time] [2022-04-27 13:07:07,733 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2863 states. [2022-04-27 13:07:12,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2863 to 2736. [2022-04-27 13:07:12,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:07:12,503 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2863 states. Second operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:07:12,506 INFO L74 IsIncluded]: Start isIncluded. First operand 2863 states. Second operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:07:12,509 INFO L87 Difference]: Start difference. First operand 2863 states. Second operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:07:12,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:12,832 INFO L93 Difference]: Finished difference Result 2863 states and 3880 transitions. [2022-04-27 13:07:12,832 INFO L276 IsEmpty]: Start isEmpty. Operand 2863 states and 3880 transitions. [2022-04-27 13:07:12,840 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:12,840 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:12,844 INFO L74 IsIncluded]: Start isIncluded. First operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) Second operand 2863 states. [2022-04-27 13:07:12,847 INFO L87 Difference]: Start difference. First operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) Second operand 2863 states. [2022-04-27 13:07:13,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:07:13,176 INFO L93 Difference]: Finished difference Result 2863 states and 3880 transitions. [2022-04-27 13:07:13,176 INFO L276 IsEmpty]: Start isEmpty. Operand 2863 states and 3880 transitions. [2022-04-27 13:07:13,181 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:07:13,181 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:07:13,181 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:07:13,181 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:07:13,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2736 states, 1985 states have (on average 1.2916876574307306) internal successors, (2564), 2026 states have internal predecessors, (2564), 594 states have call successors, (594), 158 states have call predecessors, (594), 156 states have return successors, (587), 551 states have call predecessors, (587), 587 states have call successors, (587) [2022-04-27 13:07:13,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2736 states to 2736 states and 3745 transitions. [2022-04-27 13:07:13,634 INFO L78 Accepts]: Start accepts. Automaton has 2736 states and 3745 transitions. Word has length 75 [2022-04-27 13:07:13,635 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:07:13,635 INFO L495 AbstractCegarLoop]: Abstraction has 2736 states and 3745 transitions. [2022-04-27 13:07:13,635 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 26 states have (on average 3.0) internal successors, (78), 22 states have internal predecessors, (78), 9 states have call successors, (16), 2 states have call predecessors, (16), 3 states have return successors, (14), 6 states have call predecessors, (14), 7 states have call successors, (14) [2022-04-27 13:07:13,635 INFO L276 IsEmpty]: Start isEmpty. Operand 2736 states and 3745 transitions. [2022-04-27 13:07:13,636 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-27 13:07:13,637 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:07:13,637 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:07:13,660 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-27 13:07:13,851 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-27 13:07:13,851 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:07:13,852 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:07:13,852 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 1 times [2022-04-27 13:07:13,852 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:07:13,852 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1823429461] [2022-04-27 13:07:13,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:13,852 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:07:13,866 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:07:13,866 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1950119176] [2022-04-27 13:07:13,866 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:07:13,866 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:07:13,866 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:07:13,867 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:07:13,871 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-27 13:07:13,946 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:13,948 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 86 conjunts are in the unsatisfiable core [2022-04-27 13:07:13,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:07:13,967 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:07:16,132 INFO L272 TraceCheckUtils]: 0: Hoare triple {92633#true} call ULTIMATE.init(); {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L290 TraceCheckUtils]: 1: Hoare triple {92633#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; {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L290 TraceCheckUtils]: 2: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92633#true} {92633#true} #108#return; {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L272 TraceCheckUtils]: 4: Hoare triple {92633#true} call #t~ret9 := main(); {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L290 TraceCheckUtils]: 5: Hoare triple {92633#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L272 TraceCheckUtils]: 6: Hoare triple {92633#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,132 INFO L290 TraceCheckUtils]: 7: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L290 TraceCheckUtils]: 8: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L290 TraceCheckUtils]: 9: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92633#true} {92633#true} #94#return; {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L272 TraceCheckUtils]: 11: Hoare triple {92633#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L290 TraceCheckUtils]: 12: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L290 TraceCheckUtils]: 13: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L290 TraceCheckUtils]: 14: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92633#true} {92633#true} #96#return; {92633#true} is VALID [2022-04-27 13:07:16,133 INFO L290 TraceCheckUtils]: 16: Hoare triple {92633#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92686#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:07:16,134 INFO L290 TraceCheckUtils]: 17: Hoare triple {92686#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92686#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:07:16,134 INFO L290 TraceCheckUtils]: 18: Hoare triple {92686#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {92686#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-27 13:07:16,134 INFO L290 TraceCheckUtils]: 19: Hoare triple {92686#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92696#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:07:16,135 INFO L290 TraceCheckUtils]: 20: Hoare triple {92696#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92696#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:07:16,135 INFO L290 TraceCheckUtils]: 21: Hoare triple {92696#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {92696#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:07:16,135 INFO L290 TraceCheckUtils]: 22: Hoare triple {92696#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {92706#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (<= main_~p~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-27 13:07:16,136 INFO L290 TraceCheckUtils]: 23: Hoare triple {92706#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (<= main_~b~0 main_~c~0)) (<= main_~p~0 1) (= 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; {92710#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:07:16,137 INFO L290 TraceCheckUtils]: 24: Hoare triple {92710#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92710#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:07:16,137 INFO L290 TraceCheckUtils]: 25: Hoare triple {92710#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {92710#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:07:16,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {92710#(and (= main_~s~0 0) (= main_~p~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92720#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:07:16,138 INFO L290 TraceCheckUtils]: 27: Hoare triple {92720#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92720#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:07:16,139 INFO L290 TraceCheckUtils]: 28: Hoare triple {92720#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {92720#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-27 13:07:16,139 INFO L290 TraceCheckUtils]: 29: Hoare triple {92720#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,139 INFO L290 TraceCheckUtils]: 30: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,140 INFO L290 TraceCheckUtils]: 31: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,140 INFO L272 TraceCheckUtils]: 32: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,140 INFO L290 TraceCheckUtils]: 33: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,140 INFO L290 TraceCheckUtils]: 34: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,140 INFO L290 TraceCheckUtils]: 35: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,155 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {92633#true} {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,156 INFO L272 TraceCheckUtils]: 37: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,156 INFO L290 TraceCheckUtils]: 38: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,156 INFO L290 TraceCheckUtils]: 39: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,156 INFO L290 TraceCheckUtils]: 40: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,156 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {92633#true} {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,157 INFO L272 TraceCheckUtils]: 42: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,157 INFO L290 TraceCheckUtils]: 43: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,157 INFO L290 TraceCheckUtils]: 44: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,157 INFO L290 TraceCheckUtils]: 45: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,157 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {92633#true} {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,157 INFO L272 TraceCheckUtils]: 47: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,158 INFO L290 TraceCheckUtils]: 48: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,158 INFO L290 TraceCheckUtils]: 49: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,158 INFO L290 TraceCheckUtils]: 50: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,158 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {92633#true} {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-27 13:07:16,159 INFO L290 TraceCheckUtils]: 52: Hoare triple {92730#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-27 13:07:16,159 INFO L290 TraceCheckUtils]: 53: Hoare triple {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-27 13:07:16,160 INFO L290 TraceCheckUtils]: 54: Hoare triple {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 100);havoc #t~post8; {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-27 13:07:16,160 INFO L272 TraceCheckUtils]: 55: Hoare triple {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,160 INFO L290 TraceCheckUtils]: 56: Hoare triple {92633#true} ~cond := #in~cond; {92813#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:07:16,161 INFO L290 TraceCheckUtils]: 57: Hoare triple {92813#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:16,161 INFO L290 TraceCheckUtils]: 58: Hoare triple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:16,163 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} {92800#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (not (<= main_~a~0 main_~x~0)) (<= main_~q~0 1) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {92824#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,163 INFO L272 TraceCheckUtils]: 60: Hoare triple {92824#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,163 INFO L290 TraceCheckUtils]: 61: Hoare triple {92633#true} ~cond := #in~cond; {92813#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:07:16,164 INFO L290 TraceCheckUtils]: 62: Hoare triple {92813#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:16,164 INFO L290 TraceCheckUtils]: 63: Hoare triple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:16,165 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} {92824#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,165 INFO L272 TraceCheckUtils]: 65: Hoare triple {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,165 INFO L290 TraceCheckUtils]: 66: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:07:16,165 INFO L290 TraceCheckUtils]: 67: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:07:16,165 INFO L290 TraceCheckUtils]: 68: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:07:16,166 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {92633#true} {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,166 INFO L272 TraceCheckUtils]: 70: Hoare triple {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:07:16,166 INFO L290 TraceCheckUtils]: 71: Hoare triple {92633#true} ~cond := #in~cond; {92813#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:07:16,166 INFO L290 TraceCheckUtils]: 72: Hoare triple {92813#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:16,167 INFO L290 TraceCheckUtils]: 73: Hoare triple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:07:16,167 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,168 INFO L290 TraceCheckUtils]: 75: Hoare triple {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,169 INFO L290 TraceCheckUtils]: 76: Hoare triple {92840#(and (< main_~x~0 main_~c~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (<= (* main_~b~0 2) main_~c~0) (= main_~p~0 0) (= main_~k~0 0) (<= main_~q~0 1) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92877#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,169 INFO L290 TraceCheckUtils]: 77: Hoare triple {92877#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92877#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,170 INFO L290 TraceCheckUtils]: 78: Hoare triple {92877#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {92877#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,171 INFO L290 TraceCheckUtils]: 79: Hoare triple {92877#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (<= main_~q~0 1) (= main_~r~0 1) (< main_~x~0 (+ main_~c~0 (* main_~b~0 2))) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {92887#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-27 13:07:16,172 INFO L290 TraceCheckUtils]: 80: Hoare triple {92887#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~x~0) (= main_~k~0 2) (< main_~c~0 main_~b~0) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92891#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:07:16,172 INFO L290 TraceCheckUtils]: 81: Hoare triple {92891#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92891#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:07:16,173 INFO L290 TraceCheckUtils]: 82: Hoare triple {92891#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {92891#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:07:16,173 INFO L290 TraceCheckUtils]: 83: Hoare triple {92891#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (<= (* 2 (* main_~p~0 main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} assume !(0 != ~b~0); {92901#(and (= main_~r~0 0) (= main_~y~0 (* 2 (* main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} is VALID [2022-04-27 13:07:16,175 INFO L272 TraceCheckUtils]: 84: Hoare triple {92901#(and (= main_~r~0 0) (= main_~y~0 (* 2 (* main_~p~0 main_~x~0))) (= main_~s~0 1) (< main_~y~0 (* 3 (* main_~p~0 main_~x~0))) (= main_~a~0 (* main_~p~0 main_~x~0)) (= main_~x~0 (* main_~p~0 main_~x~0)) (= (+ (* main_~p~0 2) main_~q~0) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {92905#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:07:16,175 INFO L290 TraceCheckUtils]: 85: Hoare triple {92905#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {92909#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:07:16,175 INFO L290 TraceCheckUtils]: 86: Hoare triple {92909#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {92634#false} is VALID [2022-04-27 13:07:16,175 INFO L290 TraceCheckUtils]: 87: Hoare triple {92634#false} assume !false; {92634#false} is VALID [2022-04-27 13:07:16,176 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 52 proven. 35 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-27 13:07:16,176 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:08:29,208 INFO L290 TraceCheckUtils]: 87: Hoare triple {92634#false} assume !false; {92634#false} is VALID [2022-04-27 13:08:29,209 INFO L290 TraceCheckUtils]: 86: Hoare triple {92909#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {92634#false} is VALID [2022-04-27 13:08:29,209 INFO L290 TraceCheckUtils]: 85: Hoare triple {92905#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {92909#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:08:29,210 INFO L272 TraceCheckUtils]: 84: Hoare triple {92925#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {92905#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:08:29,210 INFO L290 TraceCheckUtils]: 83: Hoare triple {92929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {92925#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:08:29,211 INFO L290 TraceCheckUtils]: 82: Hoare triple {92929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {92929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:08:29,211 INFO L290 TraceCheckUtils]: 81: Hoare triple {92929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:08:29,388 INFO L290 TraceCheckUtils]: 80: Hoare triple {92939#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92929#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:08:29,389 INFO L290 TraceCheckUtils]: 79: Hoare triple {92943#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {92939#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,389 INFO L290 TraceCheckUtils]: 78: Hoare triple {92943#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {92943#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,390 INFO L290 TraceCheckUtils]: 77: Hoare triple {92943#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92943#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,976 INFO L290 TraceCheckUtils]: 76: Hoare triple {92953#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92943#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,977 INFO L290 TraceCheckUtils]: 75: Hoare triple {92953#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {92953#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,978 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} {92960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {92953#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,978 INFO L290 TraceCheckUtils]: 73: Hoare triple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:29,979 INFO L290 TraceCheckUtils]: 72: Hoare triple {92970#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:29,979 INFO L290 TraceCheckUtils]: 71: Hoare triple {92633#true} ~cond := #in~cond; {92970#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:08:29,979 INFO L272 TraceCheckUtils]: 70: Hoare triple {92960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:29,980 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {92633#true} {92960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {92960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,980 INFO L290 TraceCheckUtils]: 68: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:29,980 INFO L290 TraceCheckUtils]: 67: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:29,980 INFO L290 TraceCheckUtils]: 66: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:29,980 INFO L272 TraceCheckUtils]: 65: Hoare triple {92960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:29,981 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} {92992#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {92960#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,981 INFO L290 TraceCheckUtils]: 63: Hoare triple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:29,982 INFO L290 TraceCheckUtils]: 62: Hoare triple {92970#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:29,982 INFO L290 TraceCheckUtils]: 61: Hoare triple {92633#true} ~cond := #in~cond; {92970#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:08:29,982 INFO L272 TraceCheckUtils]: 60: Hoare triple {92992#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:29,983 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {92992#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,983 INFO L290 TraceCheckUtils]: 58: Hoare triple {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:29,984 INFO L290 TraceCheckUtils]: 57: Hoare triple {92970#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {92817#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:08:29,984 INFO L290 TraceCheckUtils]: 56: Hoare triple {92633#true} ~cond := #in~cond; {92970#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:08:29,984 INFO L272 TraceCheckUtils]: 55: Hoare triple {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:29,985 INFO L290 TraceCheckUtils]: 54: Hoare triple {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:29,985 INFO L290 TraceCheckUtils]: 53: Hoare triple {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:30,014 INFO L290 TraceCheckUtils]: 52: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {93008#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:08:30,016 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {92633#true} {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,016 INFO L290 TraceCheckUtils]: 50: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,016 INFO L290 TraceCheckUtils]: 49: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:30,016 INFO L290 TraceCheckUtils]: 48: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:30,016 INFO L272 TraceCheckUtils]: 47: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:30,017 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {92633#true} {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,017 INFO L290 TraceCheckUtils]: 45: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,017 INFO L290 TraceCheckUtils]: 44: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:30,017 INFO L290 TraceCheckUtils]: 43: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:30,017 INFO L272 TraceCheckUtils]: 42: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:30,018 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {92633#true} {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #100#return; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,018 INFO L290 TraceCheckUtils]: 40: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,018 INFO L290 TraceCheckUtils]: 39: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:30,018 INFO L290 TraceCheckUtils]: 38: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:30,018 INFO L272 TraceCheckUtils]: 37: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:30,021 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {92633#true} {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #98#return; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,021 INFO L290 TraceCheckUtils]: 35: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,021 INFO L290 TraceCheckUtils]: 34: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:30,021 INFO L290 TraceCheckUtils]: 33: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:30,021 INFO L272 TraceCheckUtils]: 32: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:30,021 INFO L290 TraceCheckUtils]: 31: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(#t~post8 < 100);havoc #t~post8; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,022 INFO L290 TraceCheckUtils]: 30: Hoare triple {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,023 INFO L290 TraceCheckUtils]: 29: Hoare triple {93100#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {93030#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= main_~b~0 0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-27 13:08:30,023 INFO L290 TraceCheckUtils]: 28: Hoare triple {93100#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {93100#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} is VALID [2022-04-27 13:08:30,024 INFO L290 TraceCheckUtils]: 27: Hoare triple {93100#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {93100#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} is VALID [2022-04-27 13:08:30,025 INFO L290 TraceCheckUtils]: 26: Hoare triple {92633#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {93100#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 1)) (* 2 (* main_~q~0 main_~x~0 1)) (* main_~y~0 main_~s~0))) (not (= main_~c~0 (* main_~b~0 2))) (<= main_~b~0 0))} is VALID [2022-04-27 13:08:30,025 INFO L290 TraceCheckUtils]: 25: Hoare triple {92633#true} assume !!(#t~post6 < 100);havoc #t~post6; {92633#true} is VALID [2022-04-27 13:08:30,025 INFO L290 TraceCheckUtils]: 24: Hoare triple {92633#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 23: Hoare triple {92633#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 22: Hoare triple {92633#true} assume !(~c~0 >= ~b~0); {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 21: Hoare triple {92633#true} assume !!(#t~post7 < 100);havoc #t~post7; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 20: Hoare triple {92633#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 19: Hoare triple {92633#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 18: Hoare triple {92633#true} assume !!(#t~post6 < 100);havoc #t~post6; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 17: Hoare triple {92633#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 16: Hoare triple {92633#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92633#true} {92633#true} #96#return; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 14: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 13: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:30,026 INFO L290 TraceCheckUtils]: 12: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L272 TraceCheckUtils]: 11: Hoare triple {92633#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92633#true} {92633#true} #94#return; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L290 TraceCheckUtils]: 9: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L290 TraceCheckUtils]: 8: Hoare triple {92633#true} assume !(0 == ~cond); {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L290 TraceCheckUtils]: 7: Hoare triple {92633#true} ~cond := #in~cond; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L272 TraceCheckUtils]: 6: Hoare triple {92633#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L290 TraceCheckUtils]: 5: Hoare triple {92633#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L272 TraceCheckUtils]: 4: Hoare triple {92633#true} call #t~ret9 := main(); {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92633#true} {92633#true} #108#return; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {92633#true} assume true; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L290 TraceCheckUtils]: 1: Hoare triple {92633#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; {92633#true} is VALID [2022-04-27 13:08:30,027 INFO L272 TraceCheckUtils]: 0: Hoare triple {92633#true} call ULTIMATE.init(); {92633#true} is VALID [2022-04-27 13:08:30,028 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 65 proven. 19 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-27 13:08:30,028 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:08:30,028 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1823429461] [2022-04-27 13:08:30,028 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:08:30,028 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1950119176] [2022-04-27 13:08:30,028 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1950119176] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:08:30,028 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:08:30,029 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 16] total 30 [2022-04-27 13:08:30,029 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1888254427] [2022-04-27 13:08:30,029 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:08:30,029 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) Word has length 88 [2022-04-27 13:08:30,030 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:08:30,030 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:08:30,303 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 13:08:30,304 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2022-04-27 13:08:30,304 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:08:30,304 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-04-27 13:08:30,304 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=142, Invalid=728, Unknown=0, NotChecked=0, Total=870 [2022-04-27 13:08:30,305 INFO L87 Difference]: Start difference. First operand 2736 states and 3745 transitions. Second operand has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:08:51,954 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.29s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:02,982 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.66s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:18,311 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.85s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:22,650 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:49,232 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.41s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:51,246 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:09:58,369 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:10:00,382 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:10:23,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:23,268 INFO L93 Difference]: Finished difference Result 3624 states and 4993 transitions. [2022-04-27 13:10:23,268 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 87 states. [2022-04-27 13:10:23,268 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) Word has length 88 [2022-04-27 13:10:23,268 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:10:23,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:10:23,285 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 435 transitions. [2022-04-27 13:10:23,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:10:23,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 435 transitions. [2022-04-27 13:10:23,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 87 states and 435 transitions. [2022-04-27 13:10:41,004 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 435 edges. 430 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:41,546 INFO L225 Difference]: With dead ends: 3624 [2022-04-27 13:10:41,546 INFO L226 Difference]: Without dead ends: 3593 [2022-04-27 13:10:41,549 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 275 GetRequests, 168 SyntacticMatches, 1 SemanticMatches, 106 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3879 ImplicationChecksByTransitivity, 46.6s TimeCoverageRelationStatistics Valid=1957, Invalid=9599, Unknown=0, NotChecked=0, Total=11556 [2022-04-27 13:10:41,549 INFO L413 NwaCegarLoop]: 88 mSDtfsCounter, 386 mSDsluCounter, 940 mSDsCounter, 0 mSdLazyCounter, 2030 mSolverCounterSat, 504 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 31.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 386 SdHoareTripleChecker+Valid, 1028 SdHoareTripleChecker+Invalid, 2538 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 504 IncrementalHoareTripleChecker+Valid, 2030 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 31.6s IncrementalHoareTripleChecker+Time [2022-04-27 13:10:41,549 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [386 Valid, 1028 Invalid, 2538 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [504 Valid, 2030 Invalid, 4 Unknown, 0 Unchecked, 31.6s Time] [2022-04-27 13:10:41,551 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3593 states. [2022-04-27 13:10:48,255 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3593 to 3206. [2022-04-27 13:10:48,255 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:10:48,259 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3593 states. Second operand has 3206 states, 2285 states have (on average 1.3037199124726477) internal successors, (2979), 2334 states have internal predecessors, (2979), 745 states have call successors, (745), 177 states have call predecessors, (745), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:10:48,262 INFO L74 IsIncluded]: Start isIncluded. First operand 3593 states. Second operand has 3206 states, 2285 states have (on average 1.3037199124726477) internal successors, (2979), 2334 states have internal predecessors, (2979), 745 states have call successors, (745), 177 states have call predecessors, (745), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:10:48,265 INFO L87 Difference]: Start difference. First operand 3593 states. Second operand has 3206 states, 2285 states have (on average 1.3037199124726477) internal successors, (2979), 2334 states have internal predecessors, (2979), 745 states have call successors, (745), 177 states have call predecessors, (745), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:10:48,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:48,816 INFO L93 Difference]: Finished difference Result 3593 states and 4940 transitions. [2022-04-27 13:10:48,816 INFO L276 IsEmpty]: Start isEmpty. Operand 3593 states and 4940 transitions. [2022-04-27 13:10:48,822 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:48,822 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:48,828 INFO L74 IsIncluded]: Start isIncluded. First operand has 3206 states, 2285 states have (on average 1.3037199124726477) internal successors, (2979), 2334 states have internal predecessors, (2979), 745 states have call successors, (745), 177 states have call predecessors, (745), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) Second operand 3593 states. [2022-04-27 13:10:48,830 INFO L87 Difference]: Start difference. First operand has 3206 states, 2285 states have (on average 1.3037199124726477) internal successors, (2979), 2334 states have internal predecessors, (2979), 745 states have call successors, (745), 177 states have call predecessors, (745), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) Second operand 3593 states. [2022-04-27 13:10:49,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:10:49,382 INFO L93 Difference]: Finished difference Result 3593 states and 4940 transitions. [2022-04-27 13:10:49,383 INFO L276 IsEmpty]: Start isEmpty. Operand 3593 states and 4940 transitions. [2022-04-27 13:10:49,389 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:10:49,389 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:10:49,389 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:10:49,389 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:10:49,394 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3206 states, 2285 states have (on average 1.3037199124726477) internal successors, (2979), 2334 states have internal predecessors, (2979), 745 states have call successors, (745), 177 states have call predecessors, (745), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:10:50,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3206 states to 3206 states and 4462 transitions. [2022-04-27 13:10:50,028 INFO L78 Accepts]: Start accepts. Automaton has 3206 states and 4462 transitions. Word has length 88 [2022-04-27 13:10:50,028 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:10:50,028 INFO L495 AbstractCegarLoop]: Abstraction has 3206 states and 4462 transitions. [2022-04-27 13:10:50,029 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 30 states, 25 states have (on average 2.84) internal successors, (71), 26 states have internal predecessors, (71), 11 states have call successors, (22), 2 states have call predecessors, (22), 2 states have return successors, (19), 8 states have call predecessors, (19), 9 states have call successors, (19) [2022-04-27 13:10:50,029 INFO L276 IsEmpty]: Start isEmpty. Operand 3206 states and 4462 transitions. [2022-04-27 13:10:50,030 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-27 13:10:50,030 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:10:50,030 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:10:50,046 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-27 13:10:50,230 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-27 13:10:50,231 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:10:50,231 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:10:50,231 INFO L85 PathProgramCache]: Analyzing trace with hash 516983514, now seen corresponding path program 3 times [2022-04-27 13:10:50,231 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:10:50,231 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1829541423] [2022-04-27 13:10:50,231 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:10:50,231 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:10:50,244 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:10:50,244 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [319854148] [2022-04-27 13:10:50,244 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 13:10:50,245 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:10:50,245 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:10:50,246 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:10:50,247 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-27 13:10:50,313 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 13:10:50,313 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:10:50,314 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-27 13:10:50,330 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:10:50,332 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:10:51,105 INFO L272 TraceCheckUtils]: 0: Hoare triple {110356#true} call ULTIMATE.init(); {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L290 TraceCheckUtils]: 1: Hoare triple {110356#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; {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L290 TraceCheckUtils]: 2: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {110356#true} {110356#true} #108#return; {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L272 TraceCheckUtils]: 4: Hoare triple {110356#true} call #t~ret9 := main(); {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L290 TraceCheckUtils]: 5: Hoare triple {110356#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L272 TraceCheckUtils]: 6: Hoare triple {110356#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,105 INFO L290 TraceCheckUtils]: 7: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L290 TraceCheckUtils]: 8: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L290 TraceCheckUtils]: 9: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {110356#true} {110356#true} #94#return; {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L272 TraceCheckUtils]: 11: Hoare triple {110356#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L290 TraceCheckUtils]: 12: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L290 TraceCheckUtils]: 13: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L290 TraceCheckUtils]: 14: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {110356#true} {110356#true} #96#return; {110356#true} is VALID [2022-04-27 13:10:51,106 INFO L290 TraceCheckUtils]: 16: Hoare triple {110356#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {110409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,107 INFO L290 TraceCheckUtils]: 17: Hoare triple {110409#(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; {110409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,107 INFO L290 TraceCheckUtils]: 18: Hoare triple {110409#(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 < 100);havoc #t~post6; {110409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,107 INFO L290 TraceCheckUtils]: 19: Hoare triple {110409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110419#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,108 INFO L290 TraceCheckUtils]: 20: Hoare triple {110419#(and (= main_~r~0 0) (= main_~k~0 0) (= 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; {110419#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,108 INFO L290 TraceCheckUtils]: 21: Hoare triple {110419#(and (= main_~r~0 0) (= main_~k~0 0) (= 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 < 100);havoc #t~post7; {110419#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,109 INFO L290 TraceCheckUtils]: 22: Hoare triple {110419#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,109 INFO L290 TraceCheckUtils]: 23: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,109 INFO L290 TraceCheckUtils]: 24: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,109 INFO L272 TraceCheckUtils]: 25: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,109 INFO L290 TraceCheckUtils]: 26: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,109 INFO L290 TraceCheckUtils]: 27: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,110 INFO L290 TraceCheckUtils]: 28: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,110 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {110356#true} {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,110 INFO L272 TraceCheckUtils]: 30: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,110 INFO L290 TraceCheckUtils]: 31: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,110 INFO L290 TraceCheckUtils]: 32: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,110 INFO L290 TraceCheckUtils]: 33: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,111 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {110356#true} {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,111 INFO L272 TraceCheckUtils]: 35: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,111 INFO L290 TraceCheckUtils]: 36: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,111 INFO L290 TraceCheckUtils]: 37: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,111 INFO L290 TraceCheckUtils]: 38: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,112 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {110356#true} {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,112 INFO L272 TraceCheckUtils]: 40: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,112 INFO L290 TraceCheckUtils]: 41: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,112 INFO L290 TraceCheckUtils]: 42: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,112 INFO L290 TraceCheckUtils]: 43: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,113 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {110356#true} {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,113 INFO L290 TraceCheckUtils]: 45: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,114 INFO L290 TraceCheckUtils]: 46: Hoare triple {110429#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~y~0 main_~v~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,114 INFO L290 TraceCheckUtils]: 47: Hoare triple {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,115 INFO L290 TraceCheckUtils]: 48: Hoare triple {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,115 INFO L290 TraceCheckUtils]: 49: Hoare triple {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,115 INFO L290 TraceCheckUtils]: 50: Hoare triple {110502#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,116 INFO L290 TraceCheckUtils]: 51: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,116 INFO L290 TraceCheckUtils]: 52: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,117 INFO L290 TraceCheckUtils]: 53: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,117 INFO L290 TraceCheckUtils]: 54: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,117 INFO L290 TraceCheckUtils]: 55: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post7 < 100);havoc #t~post7; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,118 INFO L290 TraceCheckUtils]: 56: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,118 INFO L290 TraceCheckUtils]: 57: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,118 INFO L290 TraceCheckUtils]: 58: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post8 < 100);havoc #t~post8; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,118 INFO L272 TraceCheckUtils]: 59: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,118 INFO L290 TraceCheckUtils]: 60: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,119 INFO L290 TraceCheckUtils]: 61: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,119 INFO L290 TraceCheckUtils]: 62: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,119 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {110356#true} {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #98#return; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,119 INFO L272 TraceCheckUtils]: 64: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,119 INFO L290 TraceCheckUtils]: 65: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,119 INFO L290 TraceCheckUtils]: 66: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,119 INFO L290 TraceCheckUtils]: 67: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,120 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {110356#true} {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #100#return; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,120 INFO L272 TraceCheckUtils]: 69: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,120 INFO L290 TraceCheckUtils]: 70: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,120 INFO L290 TraceCheckUtils]: 71: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,120 INFO L290 TraceCheckUtils]: 72: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,128 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {110356#true} {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #102#return; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,128 INFO L272 TraceCheckUtils]: 74: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,128 INFO L290 TraceCheckUtils]: 75: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,128 INFO L290 TraceCheckUtils]: 76: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,128 INFO L290 TraceCheckUtils]: 77: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,129 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {110356#true} {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #104#return; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,129 INFO L290 TraceCheckUtils]: 79: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(~c~0 >= 2 * ~v~0); {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,130 INFO L290 TraceCheckUtils]: 80: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,130 INFO L290 TraceCheckUtils]: 81: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,131 INFO L290 TraceCheckUtils]: 82: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post7 < 100);havoc #t~post7; {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,131 INFO L290 TraceCheckUtils]: 83: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(~c~0 >= ~b~0); {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-27 13:10:51,132 INFO L290 TraceCheckUtils]: 84: Hoare triple {110515#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 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; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,132 INFO L290 TraceCheckUtils]: 85: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,133 INFO L290 TraceCheckUtils]: 86: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,133 INFO L290 TraceCheckUtils]: 87: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,134 INFO L290 TraceCheckUtils]: 88: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,134 INFO L290 TraceCheckUtils]: 89: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,135 INFO L290 TraceCheckUtils]: 90: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,135 INFO L290 TraceCheckUtils]: 91: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,136 INFO L290 TraceCheckUtils]: 92: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} is VALID [2022-04-27 13:10:51,136 INFO L272 TraceCheckUtils]: 93: Hoare triple {110618#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~a~0) (= (+ main_~r~0 1) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110646#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:10:51,137 INFO L290 TraceCheckUtils]: 94: Hoare triple {110646#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {110650#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:51,137 INFO L290 TraceCheckUtils]: 95: Hoare triple {110650#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {110357#false} is VALID [2022-04-27 13:10:51,137 INFO L290 TraceCheckUtils]: 96: Hoare triple {110357#false} assume !false; {110357#false} is VALID [2022-04-27 13:10:51,138 INFO L134 CoverageAnalysis]: Checked inductivity of 186 backedges. 16 proven. 51 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-27 13:10:51,138 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:10:51,606 INFO L290 TraceCheckUtils]: 96: Hoare triple {110357#false} assume !false; {110357#false} is VALID [2022-04-27 13:10:51,607 INFO L290 TraceCheckUtils]: 95: Hoare triple {110650#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {110357#false} is VALID [2022-04-27 13:10:51,607 INFO L290 TraceCheckUtils]: 94: Hoare triple {110646#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {110650#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:10:51,608 INFO L272 TraceCheckUtils]: 93: Hoare triple {110666#(= 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)); {110646#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:10:51,608 INFO L290 TraceCheckUtils]: 92: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,608 INFO L290 TraceCheckUtils]: 91: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,609 INFO L290 TraceCheckUtils]: 90: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,609 INFO L290 TraceCheckUtils]: 89: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,609 INFO L290 TraceCheckUtils]: 88: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,610 INFO L290 TraceCheckUtils]: 87: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,610 INFO L290 TraceCheckUtils]: 86: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,610 INFO L290 TraceCheckUtils]: 85: Hoare triple {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,611 INFO L290 TraceCheckUtils]: 84: Hoare triple {110694#(= 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; {110666#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:10:51,611 INFO L290 TraceCheckUtils]: 83: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,612 INFO L290 TraceCheckUtils]: 82: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,612 INFO L290 TraceCheckUtils]: 81: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,612 INFO L290 TraceCheckUtils]: 80: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,612 INFO L290 TraceCheckUtils]: 79: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,613 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {110356#true} {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,613 INFO L290 TraceCheckUtils]: 77: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,613 INFO L290 TraceCheckUtils]: 76: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,613 INFO L290 TraceCheckUtils]: 75: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,613 INFO L272 TraceCheckUtils]: 74: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:51,614 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {110356#true} {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,614 INFO L290 TraceCheckUtils]: 72: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,614 INFO L290 TraceCheckUtils]: 71: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,614 INFO L290 TraceCheckUtils]: 70: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,614 INFO L272 TraceCheckUtils]: 69: Hoare triple {110694#(= 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)); {110356#true} is VALID [2022-04-27 13:10:51,615 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {110356#true} {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #100#return; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,615 INFO L290 TraceCheckUtils]: 67: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,615 INFO L290 TraceCheckUtils]: 66: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,615 INFO L290 TraceCheckUtils]: 65: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,615 INFO L272 TraceCheckUtils]: 64: Hoare triple {110694#(= 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)); {110356#true} is VALID [2022-04-27 13:10:51,616 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {110356#true} {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,616 INFO L290 TraceCheckUtils]: 62: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:51,616 INFO L290 TraceCheckUtils]: 61: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:51,616 INFO L290 TraceCheckUtils]: 60: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:51,616 INFO L272 TraceCheckUtils]: 59: Hoare triple {110694#(= 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)); {110356#true} is VALID [2022-04-27 13:10:51,616 INFO L290 TraceCheckUtils]: 58: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,616 INFO L290 TraceCheckUtils]: 57: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,617 INFO L290 TraceCheckUtils]: 56: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,617 INFO L290 TraceCheckUtils]: 55: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,617 INFO L290 TraceCheckUtils]: 54: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,618 INFO L290 TraceCheckUtils]: 53: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,618 INFO L290 TraceCheckUtils]: 52: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:51,618 INFO L290 TraceCheckUtils]: 51: Hoare triple {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-27 13:10:53,621 WARN L290 TraceCheckUtils]: 50: Hoare triple {110797#(= (+ (* (+ (* (* main_~k~0 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; {110694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-27 13:10:53,621 INFO L290 TraceCheckUtils]: 49: Hoare triple {110797#(= (+ (* (+ (* (* main_~k~0 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); {110797#(= (+ (* (+ (* (* main_~k~0 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:10:53,622 INFO L290 TraceCheckUtils]: 48: Hoare triple {110797#(= (+ (* (+ (* (* main_~k~0 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 < 100);havoc #t~post7; {110797#(= (+ (* (+ (* (* main_~k~0 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:10:53,622 INFO L290 TraceCheckUtils]: 47: Hoare triple {110797#(= (+ (* (+ (* (* main_~k~0 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; {110797#(= (+ (* (+ (* (* main_~k~0 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:10:54,020 INFO L290 TraceCheckUtils]: 46: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {110797#(= (+ (* (+ (* (* main_~k~0 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:10:54,021 INFO L290 TraceCheckUtils]: 45: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} assume !(~c~0 >= 2 * ~v~0); {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,022 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {110356#true} {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} #104#return; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,022 INFO L290 TraceCheckUtils]: 43: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,022 INFO L290 TraceCheckUtils]: 42: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:54,022 INFO L290 TraceCheckUtils]: 41: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:54,022 INFO L272 TraceCheckUtils]: 40: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:54,023 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {110356#true} {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} #102#return; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,023 INFO L290 TraceCheckUtils]: 38: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,023 INFO L290 TraceCheckUtils]: 37: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:54,023 INFO L290 TraceCheckUtils]: 36: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:54,023 INFO L272 TraceCheckUtils]: 35: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:54,024 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {110356#true} {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} #100#return; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,024 INFO L290 TraceCheckUtils]: 33: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,024 INFO L290 TraceCheckUtils]: 32: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:54,024 INFO L290 TraceCheckUtils]: 31: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:54,024 INFO L272 TraceCheckUtils]: 30: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:54,031 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {110356#true} {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} #98#return; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,031 INFO L290 TraceCheckUtils]: 28: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,031 INFO L290 TraceCheckUtils]: 27: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:54,031 INFO L290 TraceCheckUtils]: 26: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:54,031 INFO L272 TraceCheckUtils]: 25: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:54,031 INFO L290 TraceCheckUtils]: 24: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,032 INFO L290 TraceCheckUtils]: 23: Hoare triple {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,032 INFO L290 TraceCheckUtils]: 22: Hoare triple {110883#(= (+ (* 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);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {110810#(= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)))} is VALID [2022-04-27 13:10:54,033 INFO L290 TraceCheckUtils]: 21: Hoare triple {110883#(= (+ (* 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 < 100);havoc #t~post7; {110883#(= (+ (* 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:10:54,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {110883#(= (+ (* 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; {110883#(= (+ (* 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:10:54,034 INFO L290 TraceCheckUtils]: 19: Hoare triple {110893#(= (+ 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);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {110883#(= (+ (* 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:10:54,034 INFO L290 TraceCheckUtils]: 18: Hoare triple {110893#(= (+ 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 < 100);havoc #t~post6; {110893#(= (+ 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:10:54,035 INFO L290 TraceCheckUtils]: 17: Hoare triple {110893#(= (+ 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; {110893#(= (+ 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:10:54,035 INFO L290 TraceCheckUtils]: 16: Hoare triple {110356#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {110893#(= (+ 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:10:54,035 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {110356#true} {110356#true} #96#return; {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 13: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 12: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L272 TraceCheckUtils]: 11: Hoare triple {110356#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {110356#true} {110356#true} #94#return; {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 9: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 8: Hoare triple {110356#true} assume !(0 == ~cond); {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 7: Hoare triple {110356#true} ~cond := #in~cond; {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L272 TraceCheckUtils]: 6: Hoare triple {110356#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {110356#true} is VALID [2022-04-27 13:10:54,035 INFO L290 TraceCheckUtils]: 5: Hoare triple {110356#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {110356#true} is VALID [2022-04-27 13:10:54,036 INFO L272 TraceCheckUtils]: 4: Hoare triple {110356#true} call #t~ret9 := main(); {110356#true} is VALID [2022-04-27 13:10:54,036 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {110356#true} {110356#true} #108#return; {110356#true} is VALID [2022-04-27 13:10:54,036 INFO L290 TraceCheckUtils]: 2: Hoare triple {110356#true} assume true; {110356#true} is VALID [2022-04-27 13:10:54,036 INFO L290 TraceCheckUtils]: 1: Hoare triple {110356#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; {110356#true} is VALID [2022-04-27 13:10:54,036 INFO L272 TraceCheckUtils]: 0: Hoare triple {110356#true} call ULTIMATE.init(); {110356#true} is VALID [2022-04-27 13:10:54,036 INFO L134 CoverageAnalysis]: Checked inductivity of 186 backedges. 16 proven. 51 refuted. 0 times theorem prover too weak. 119 trivial. 0 not checked. [2022-04-27 13:10:54,036 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:10:54,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1829541423] [2022-04-27 13:10:54,036 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:10:54,036 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [319854148] [2022-04-27 13:10:54,036 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [319854148] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:10:54,036 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:10:54,036 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 16 [2022-04-27 13:10:54,037 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [451007573] [2022-04-27 13:10:54,037 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:10:54,037 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) Word has length 97 [2022-04-27 13:10:54,037 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:10:54,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:10:55,554 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 123 edges. 123 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:10:55,554 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-27 13:10:55,554 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:10:55,554 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-27 13:10:55,554 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=200, Unknown=0, NotChecked=0, Total=240 [2022-04-27 13:10:55,555 INFO L87 Difference]: Start difference. First operand 3206 states and 4462 transitions. Second operand has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:10:57,672 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:11:07,574 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.05s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:11:09,578 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:11:20,307 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:11:40,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:11:40,882 INFO L93 Difference]: Finished difference Result 3415 states and 4755 transitions. [2022-04-27 13:11:40,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-27 13:11:40,882 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) Word has length 97 [2022-04-27 13:11:40,882 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:11:40,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:11:40,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 161 transitions. [2022-04-27 13:11:40,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:11:40,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 161 transitions. [2022-04-27 13:11:40,886 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 161 transitions. [2022-04-27 13:11:47,722 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:11:48,216 INFO L225 Difference]: With dead ends: 3415 [2022-04-27 13:11:48,216 INFO L226 Difference]: Without dead ends: 3403 [2022-04-27 13:11:48,217 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 208 GetRequests, 178 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 92 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=201, Invalid=729, Unknown=0, NotChecked=0, Total=930 [2022-04-27 13:11:48,217 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 106 mSDsluCounter, 437 mSDsCounter, 0 mSdLazyCounter, 667 mSolverCounterSat, 134 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 19.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 106 SdHoareTripleChecker+Valid, 500 SdHoareTripleChecker+Invalid, 804 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 134 IncrementalHoareTripleChecker+Valid, 667 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 19.9s IncrementalHoareTripleChecker+Time [2022-04-27 13:11:48,217 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [106 Valid, 500 Invalid, 804 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [134 Valid, 667 Invalid, 3 Unknown, 0 Unchecked, 19.9s Time] [2022-04-27 13:11:48,219 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3403 states. [2022-04-27 13:11:54,866 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3403 to 3133. [2022-04-27 13:11:54,866 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:11:54,870 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3403 states. Second operand has 3133 states, 2217 states have (on average 1.3031123139377536) internal successors, (2889), 2261 states have internal predecessors, (2889), 740 states have call successors, (740), 177 states have call predecessors, (740), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:11:54,873 INFO L74 IsIncluded]: Start isIncluded. First operand 3403 states. Second operand has 3133 states, 2217 states have (on average 1.3031123139377536) internal successors, (2889), 2261 states have internal predecessors, (2889), 740 states have call successors, (740), 177 states have call predecessors, (740), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:11:54,877 INFO L87 Difference]: Start difference. First operand 3403 states. Second operand has 3133 states, 2217 states have (on average 1.3031123139377536) internal successors, (2889), 2261 states have internal predecessors, (2889), 740 states have call successors, (740), 177 states have call predecessors, (740), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:11:55,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:11:55,364 INFO L93 Difference]: Finished difference Result 3403 states and 4739 transitions. [2022-04-27 13:11:55,364 INFO L276 IsEmpty]: Start isEmpty. Operand 3403 states and 4739 transitions. [2022-04-27 13:11:55,370 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:11:55,370 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:11:55,375 INFO L74 IsIncluded]: Start isIncluded. First operand has 3133 states, 2217 states have (on average 1.3031123139377536) internal successors, (2889), 2261 states have internal predecessors, (2889), 740 states have call successors, (740), 177 states have call predecessors, (740), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) Second operand 3403 states. [2022-04-27 13:11:55,377 INFO L87 Difference]: Start difference. First operand has 3133 states, 2217 states have (on average 1.3031123139377536) internal successors, (2889), 2261 states have internal predecessors, (2889), 740 states have call successors, (740), 177 states have call predecessors, (740), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) Second operand 3403 states. [2022-04-27 13:11:55,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:11:55,870 INFO L93 Difference]: Finished difference Result 3403 states and 4739 transitions. [2022-04-27 13:11:55,870 INFO L276 IsEmpty]: Start isEmpty. Operand 3403 states and 4739 transitions. [2022-04-27 13:11:55,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:11:55,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:11:55,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:11:55,877 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:11:55,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3133 states, 2217 states have (on average 1.3031123139377536) internal successors, (2889), 2261 states have internal predecessors, (2889), 740 states have call successors, (740), 177 states have call predecessors, (740), 175 states have return successors, (738), 694 states have call predecessors, (738), 738 states have call successors, (738) [2022-04-27 13:11:56,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3133 states to 3133 states and 4367 transitions. [2022-04-27 13:11:56,407 INFO L78 Accepts]: Start accepts. Automaton has 3133 states and 4367 transitions. Word has length 97 [2022-04-27 13:11:56,407 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:11:56,407 INFO L495 AbstractCegarLoop]: Abstraction has 3133 states and 4367 transitions. [2022-04-27 13:11:56,408 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 5.125) internal successors, (82), 15 states have internal predecessors, (82), 7 states have call successors, (22), 2 states have call predecessors, (22), 1 states have return successors, (19), 5 states have call predecessors, (19), 5 states have call successors, (19) [2022-04-27 13:11:56,408 INFO L276 IsEmpty]: Start isEmpty. Operand 3133 states and 4367 transitions. [2022-04-27 13:11:56,408 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-27 13:11:56,408 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:11:56,408 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:11:56,425 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-27 13:11:56,609 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:11:56,609 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:11:56,609 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:11:56,609 INFO L85 PathProgramCache]: Analyzing trace with hash 493698625, now seen corresponding path program 1 times [2022-04-27 13:11:56,609 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:11:56,609 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1468876342] [2022-04-27 13:11:56,609 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:11:56,609 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:11:56,624 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:11:56,624 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [813655411] [2022-04-27 13:11:56,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:11:56,624 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:11:56,624 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:11:56,625 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:11:56,627 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-27 13:11:56,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:11:56,692 INFO L263 TraceCheckSpWp]: Trace formula consists of 302 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-27 13:11:56,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:11:56,714 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:11:57,179 INFO L272 TraceCheckUtils]: 0: Hoare triple {127298#true} call ULTIMATE.init(); {127298#true} is VALID [2022-04-27 13:11:57,180 INFO L290 TraceCheckUtils]: 1: Hoare triple {127298#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; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,180 INFO L290 TraceCheckUtils]: 2: Hoare triple {127306#(<= ~counter~0 0)} assume true; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,180 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127306#(<= ~counter~0 0)} {127298#true} #108#return; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,180 INFO L272 TraceCheckUtils]: 4: Hoare triple {127306#(<= ~counter~0 0)} call #t~ret9 := main(); {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,181 INFO L290 TraceCheckUtils]: 5: Hoare triple {127306#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,181 INFO L272 TraceCheckUtils]: 6: Hoare triple {127306#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,181 INFO L290 TraceCheckUtils]: 7: Hoare triple {127306#(<= ~counter~0 0)} ~cond := #in~cond; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,182 INFO L290 TraceCheckUtils]: 8: Hoare triple {127306#(<= ~counter~0 0)} assume !(0 == ~cond); {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,182 INFO L290 TraceCheckUtils]: 9: Hoare triple {127306#(<= ~counter~0 0)} assume true; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,182 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127306#(<= ~counter~0 0)} {127306#(<= ~counter~0 0)} #94#return; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,183 INFO L272 TraceCheckUtils]: 11: Hoare triple {127306#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,183 INFO L290 TraceCheckUtils]: 12: Hoare triple {127306#(<= ~counter~0 0)} ~cond := #in~cond; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,183 INFO L290 TraceCheckUtils]: 13: Hoare triple {127306#(<= ~counter~0 0)} assume !(0 == ~cond); {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,183 INFO L290 TraceCheckUtils]: 14: Hoare triple {127306#(<= ~counter~0 0)} assume true; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,184 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {127306#(<= ~counter~0 0)} {127306#(<= ~counter~0 0)} #96#return; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,184 INFO L290 TraceCheckUtils]: 16: Hoare triple {127306#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {127306#(<= ~counter~0 0)} is VALID [2022-04-27 13:11:57,185 INFO L290 TraceCheckUtils]: 17: Hoare triple {127306#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127355#(<= ~counter~0 1)} is VALID [2022-04-27 13:11:57,186 INFO L290 TraceCheckUtils]: 18: Hoare triple {127355#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {127355#(<= ~counter~0 1)} is VALID [2022-04-27 13:11:57,186 INFO L290 TraceCheckUtils]: 19: Hoare triple {127355#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127355#(<= ~counter~0 1)} is VALID [2022-04-27 13:11:57,186 INFO L290 TraceCheckUtils]: 20: Hoare triple {127355#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127365#(<= ~counter~0 2)} is VALID [2022-04-27 13:11:57,187 INFO L290 TraceCheckUtils]: 21: Hoare triple {127365#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {127365#(<= ~counter~0 2)} is VALID [2022-04-27 13:11:57,187 INFO L290 TraceCheckUtils]: 22: Hoare triple {127365#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127365#(<= ~counter~0 2)} is VALID [2022-04-27 13:11:57,188 INFO L290 TraceCheckUtils]: 23: Hoare triple {127365#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,188 INFO L290 TraceCheckUtils]: 24: Hoare triple {127375#(<= ~counter~0 3)} assume !!(#t~post8 < 100);havoc #t~post8; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,188 INFO L272 TraceCheckUtils]: 25: Hoare triple {127375#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,189 INFO L290 TraceCheckUtils]: 26: Hoare triple {127375#(<= ~counter~0 3)} ~cond := #in~cond; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,189 INFO L290 TraceCheckUtils]: 27: Hoare triple {127375#(<= ~counter~0 3)} assume !(0 == ~cond); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,189 INFO L290 TraceCheckUtils]: 28: Hoare triple {127375#(<= ~counter~0 3)} assume true; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,190 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {127375#(<= ~counter~0 3)} {127375#(<= ~counter~0 3)} #98#return; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,190 INFO L272 TraceCheckUtils]: 30: Hoare triple {127375#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,190 INFO L290 TraceCheckUtils]: 31: Hoare triple {127375#(<= ~counter~0 3)} ~cond := #in~cond; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,191 INFO L290 TraceCheckUtils]: 32: Hoare triple {127375#(<= ~counter~0 3)} assume !(0 == ~cond); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,191 INFO L290 TraceCheckUtils]: 33: Hoare triple {127375#(<= ~counter~0 3)} assume true; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,192 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {127375#(<= ~counter~0 3)} {127375#(<= ~counter~0 3)} #100#return; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,192 INFO L272 TraceCheckUtils]: 35: Hoare triple {127375#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,192 INFO L290 TraceCheckUtils]: 36: Hoare triple {127375#(<= ~counter~0 3)} ~cond := #in~cond; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,192 INFO L290 TraceCheckUtils]: 37: Hoare triple {127375#(<= ~counter~0 3)} assume !(0 == ~cond); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,193 INFO L290 TraceCheckUtils]: 38: Hoare triple {127375#(<= ~counter~0 3)} assume true; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,193 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {127375#(<= ~counter~0 3)} {127375#(<= ~counter~0 3)} #102#return; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,194 INFO L272 TraceCheckUtils]: 40: Hoare triple {127375#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,194 INFO L290 TraceCheckUtils]: 41: Hoare triple {127375#(<= ~counter~0 3)} ~cond := #in~cond; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,194 INFO L290 TraceCheckUtils]: 42: Hoare triple {127375#(<= ~counter~0 3)} assume !(0 == ~cond); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,194 INFO L290 TraceCheckUtils]: 43: Hoare triple {127375#(<= ~counter~0 3)} assume true; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,195 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {127375#(<= ~counter~0 3)} {127375#(<= ~counter~0 3)} #104#return; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,195 INFO L290 TraceCheckUtils]: 45: Hoare triple {127375#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,195 INFO L290 TraceCheckUtils]: 46: Hoare triple {127375#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127375#(<= ~counter~0 3)} is VALID [2022-04-27 13:11:57,196 INFO L290 TraceCheckUtils]: 47: Hoare triple {127375#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127448#(<= ~counter~0 4)} is VALID [2022-04-27 13:11:57,196 INFO L290 TraceCheckUtils]: 48: Hoare triple {127448#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {127448#(<= ~counter~0 4)} is VALID [2022-04-27 13:11:57,197 INFO L290 TraceCheckUtils]: 49: Hoare triple {127448#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {127448#(<= ~counter~0 4)} is VALID [2022-04-27 13:11:57,197 INFO L290 TraceCheckUtils]: 50: Hoare triple {127448#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {127448#(<= ~counter~0 4)} is VALID [2022-04-27 13:11:57,198 INFO L290 TraceCheckUtils]: 51: Hoare triple {127448#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127461#(<= ~counter~0 5)} is VALID [2022-04-27 13:11:57,198 INFO L290 TraceCheckUtils]: 52: Hoare triple {127461#(<= ~counter~0 5)} assume !!(#t~post6 < 100);havoc #t~post6; {127461#(<= ~counter~0 5)} is VALID [2022-04-27 13:11:57,198 INFO L290 TraceCheckUtils]: 53: Hoare triple {127461#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127461#(<= ~counter~0 5)} is VALID [2022-04-27 13:11:57,199 INFO L290 TraceCheckUtils]: 54: Hoare triple {127461#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127471#(<= ~counter~0 6)} is VALID [2022-04-27 13:11:57,199 INFO L290 TraceCheckUtils]: 55: Hoare triple {127471#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {127471#(<= ~counter~0 6)} is VALID [2022-04-27 13:11:57,199 INFO L290 TraceCheckUtils]: 56: Hoare triple {127471#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127471#(<= ~counter~0 6)} is VALID [2022-04-27 13:11:57,200 INFO L290 TraceCheckUtils]: 57: Hoare triple {127471#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,200 INFO L290 TraceCheckUtils]: 58: Hoare triple {127481#(<= ~counter~0 7)} assume !!(#t~post8 < 100);havoc #t~post8; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,201 INFO L272 TraceCheckUtils]: 59: Hoare triple {127481#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,201 INFO L290 TraceCheckUtils]: 60: Hoare triple {127481#(<= ~counter~0 7)} ~cond := #in~cond; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,201 INFO L290 TraceCheckUtils]: 61: Hoare triple {127481#(<= ~counter~0 7)} assume !(0 == ~cond); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,201 INFO L290 TraceCheckUtils]: 62: Hoare triple {127481#(<= ~counter~0 7)} assume true; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,202 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {127481#(<= ~counter~0 7)} {127481#(<= ~counter~0 7)} #98#return; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,202 INFO L272 TraceCheckUtils]: 64: Hoare triple {127481#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,203 INFO L290 TraceCheckUtils]: 65: Hoare triple {127481#(<= ~counter~0 7)} ~cond := #in~cond; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,203 INFO L290 TraceCheckUtils]: 66: Hoare triple {127481#(<= ~counter~0 7)} assume !(0 == ~cond); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,203 INFO L290 TraceCheckUtils]: 67: Hoare triple {127481#(<= ~counter~0 7)} assume true; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,204 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {127481#(<= ~counter~0 7)} {127481#(<= ~counter~0 7)} #100#return; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,204 INFO L272 TraceCheckUtils]: 69: Hoare triple {127481#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,204 INFO L290 TraceCheckUtils]: 70: Hoare triple {127481#(<= ~counter~0 7)} ~cond := #in~cond; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,205 INFO L290 TraceCheckUtils]: 71: Hoare triple {127481#(<= ~counter~0 7)} assume !(0 == ~cond); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,205 INFO L290 TraceCheckUtils]: 72: Hoare triple {127481#(<= ~counter~0 7)} assume true; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,205 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {127481#(<= ~counter~0 7)} {127481#(<= ~counter~0 7)} #102#return; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,206 INFO L272 TraceCheckUtils]: 74: Hoare triple {127481#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,206 INFO L290 TraceCheckUtils]: 75: Hoare triple {127481#(<= ~counter~0 7)} ~cond := #in~cond; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,206 INFO L290 TraceCheckUtils]: 76: Hoare triple {127481#(<= ~counter~0 7)} assume !(0 == ~cond); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,207 INFO L290 TraceCheckUtils]: 77: Hoare triple {127481#(<= ~counter~0 7)} assume true; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,207 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {127481#(<= ~counter~0 7)} {127481#(<= ~counter~0 7)} #104#return; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,207 INFO L290 TraceCheckUtils]: 79: Hoare triple {127481#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,208 INFO L290 TraceCheckUtils]: 80: Hoare triple {127481#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127481#(<= ~counter~0 7)} is VALID [2022-04-27 13:11:57,208 INFO L290 TraceCheckUtils]: 81: Hoare triple {127481#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127554#(<= ~counter~0 8)} is VALID [2022-04-27 13:11:57,209 INFO L290 TraceCheckUtils]: 82: Hoare triple {127554#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {127554#(<= ~counter~0 8)} is VALID [2022-04-27 13:11:57,209 INFO L290 TraceCheckUtils]: 83: Hoare triple {127554#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {127554#(<= ~counter~0 8)} is VALID [2022-04-27 13:11:57,209 INFO L290 TraceCheckUtils]: 84: Hoare triple {127554#(<= ~counter~0 8)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {127554#(<= ~counter~0 8)} is VALID [2022-04-27 13:11:57,210 INFO L290 TraceCheckUtils]: 85: Hoare triple {127554#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127567#(<= ~counter~0 9)} is VALID [2022-04-27 13:11:57,210 INFO L290 TraceCheckUtils]: 86: Hoare triple {127567#(<= ~counter~0 9)} assume !!(#t~post6 < 100);havoc #t~post6; {127567#(<= ~counter~0 9)} is VALID [2022-04-27 13:11:57,210 INFO L290 TraceCheckUtils]: 87: Hoare triple {127567#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127567#(<= ~counter~0 9)} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 88: Hoare triple {127567#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127577#(<= |main_#t~post7| 9)} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 89: Hoare triple {127577#(<= |main_#t~post7| 9)} assume !(#t~post7 < 100);havoc #t~post7; {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 90: Hoare triple {127299#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; {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 91: Hoare triple {127299#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 92: Hoare triple {127299#false} assume !!(#t~post6 < 100);havoc #t~post6; {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 93: Hoare triple {127299#false} assume !(0 != ~b~0); {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L272 TraceCheckUtils]: 94: Hoare triple {127299#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 95: Hoare triple {127299#false} ~cond := #in~cond; {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 96: Hoare triple {127299#false} assume 0 == ~cond; {127299#false} is VALID [2022-04-27 13:11:57,211 INFO L290 TraceCheckUtils]: 97: Hoare triple {127299#false} assume !false; {127299#false} is VALID [2022-04-27 13:11:57,212 INFO L134 CoverageAnalysis]: Checked inductivity of 187 backedges. 27 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:11:57,212 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:11:57,736 INFO L290 TraceCheckUtils]: 97: Hoare triple {127299#false} assume !false; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 96: Hoare triple {127299#false} assume 0 == ~cond; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 95: Hoare triple {127299#false} ~cond := #in~cond; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L272 TraceCheckUtils]: 94: Hoare triple {127299#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 93: Hoare triple {127299#false} assume !(0 != ~b~0); {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 92: Hoare triple {127299#false} assume !!(#t~post6 < 100);havoc #t~post6; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 91: Hoare triple {127299#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 90: Hoare triple {127299#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; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 89: Hoare triple {127629#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {127299#false} is VALID [2022-04-27 13:11:57,737 INFO L290 TraceCheckUtils]: 88: Hoare triple {127633#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127629#(< |main_#t~post7| 100)} is VALID [2022-04-27 13:11:57,738 INFO L290 TraceCheckUtils]: 87: Hoare triple {127633#(< ~counter~0 100)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127633#(< ~counter~0 100)} is VALID [2022-04-27 13:11:57,738 INFO L290 TraceCheckUtils]: 86: Hoare triple {127633#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {127633#(< ~counter~0 100)} is VALID [2022-04-27 13:11:57,739 INFO L290 TraceCheckUtils]: 85: Hoare triple {127643#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127633#(< ~counter~0 100)} is VALID [2022-04-27 13:11:57,740 INFO L290 TraceCheckUtils]: 84: Hoare triple {127643#(< ~counter~0 99)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {127643#(< ~counter~0 99)} is VALID [2022-04-27 13:11:57,740 INFO L290 TraceCheckUtils]: 83: Hoare triple {127643#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {127643#(< ~counter~0 99)} is VALID [2022-04-27 13:11:57,740 INFO L290 TraceCheckUtils]: 82: Hoare triple {127643#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {127643#(< ~counter~0 99)} is VALID [2022-04-27 13:11:57,741 INFO L290 TraceCheckUtils]: 81: Hoare triple {127656#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127643#(< ~counter~0 99)} is VALID [2022-04-27 13:11:57,741 INFO L290 TraceCheckUtils]: 80: Hoare triple {127656#(< ~counter~0 98)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,741 INFO L290 TraceCheckUtils]: 79: Hoare triple {127656#(< ~counter~0 98)} assume !(~c~0 >= 2 * ~v~0); {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,742 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {127298#true} {127656#(< ~counter~0 98)} #104#return; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,742 INFO L290 TraceCheckUtils]: 77: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,742 INFO L290 TraceCheckUtils]: 76: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,742 INFO L290 TraceCheckUtils]: 75: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,742 INFO L272 TraceCheckUtils]: 74: Hoare triple {127656#(< ~counter~0 98)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,742 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {127298#true} {127656#(< ~counter~0 98)} #102#return; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,742 INFO L290 TraceCheckUtils]: 72: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,742 INFO L290 TraceCheckUtils]: 71: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,742 INFO L290 TraceCheckUtils]: 70: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,743 INFO L272 TraceCheckUtils]: 69: Hoare triple {127656#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,743 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {127298#true} {127656#(< ~counter~0 98)} #100#return; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,743 INFO L290 TraceCheckUtils]: 67: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,743 INFO L290 TraceCheckUtils]: 66: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,743 INFO L290 TraceCheckUtils]: 65: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,743 INFO L272 TraceCheckUtils]: 64: Hoare triple {127656#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,744 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {127298#true} {127656#(< ~counter~0 98)} #98#return; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,744 INFO L290 TraceCheckUtils]: 62: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,744 INFO L290 TraceCheckUtils]: 61: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,744 INFO L290 TraceCheckUtils]: 60: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,744 INFO L272 TraceCheckUtils]: 59: Hoare triple {127656#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,744 INFO L290 TraceCheckUtils]: 58: Hoare triple {127656#(< ~counter~0 98)} assume !!(#t~post8 < 100);havoc #t~post8; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,745 INFO L290 TraceCheckUtils]: 57: Hoare triple {127729#(< ~counter~0 97)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127656#(< ~counter~0 98)} is VALID [2022-04-27 13:11:57,745 INFO L290 TraceCheckUtils]: 56: Hoare triple {127729#(< ~counter~0 97)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127729#(< ~counter~0 97)} is VALID [2022-04-27 13:11:57,745 INFO L290 TraceCheckUtils]: 55: Hoare triple {127729#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {127729#(< ~counter~0 97)} is VALID [2022-04-27 13:11:57,746 INFO L290 TraceCheckUtils]: 54: Hoare triple {127739#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127729#(< ~counter~0 97)} is VALID [2022-04-27 13:11:57,746 INFO L290 TraceCheckUtils]: 53: Hoare triple {127739#(< ~counter~0 96)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127739#(< ~counter~0 96)} is VALID [2022-04-27 13:11:57,747 INFO L290 TraceCheckUtils]: 52: Hoare triple {127739#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {127739#(< ~counter~0 96)} is VALID [2022-04-27 13:11:57,747 INFO L290 TraceCheckUtils]: 51: Hoare triple {127749#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127739#(< ~counter~0 96)} is VALID [2022-04-27 13:11:57,747 INFO L290 TraceCheckUtils]: 50: Hoare triple {127749#(< ~counter~0 95)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {127749#(< ~counter~0 95)} is VALID [2022-04-27 13:11:57,748 INFO L290 TraceCheckUtils]: 49: Hoare triple {127749#(< ~counter~0 95)} assume !(~c~0 >= ~b~0); {127749#(< ~counter~0 95)} is VALID [2022-04-27 13:11:57,748 INFO L290 TraceCheckUtils]: 48: Hoare triple {127749#(< ~counter~0 95)} assume !!(#t~post7 < 100);havoc #t~post7; {127749#(< ~counter~0 95)} is VALID [2022-04-27 13:11:57,749 INFO L290 TraceCheckUtils]: 47: Hoare triple {127762#(< ~counter~0 94)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127749#(< ~counter~0 95)} is VALID [2022-04-27 13:11:57,749 INFO L290 TraceCheckUtils]: 46: Hoare triple {127762#(< ~counter~0 94)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,749 INFO L290 TraceCheckUtils]: 45: Hoare triple {127762#(< ~counter~0 94)} assume !(~c~0 >= 2 * ~v~0); {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,750 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {127298#true} {127762#(< ~counter~0 94)} #104#return; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,750 INFO L290 TraceCheckUtils]: 43: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L290 TraceCheckUtils]: 42: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L290 TraceCheckUtils]: 41: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L272 TraceCheckUtils]: 40: Hoare triple {127762#(< ~counter~0 94)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {127298#true} {127762#(< ~counter~0 94)} #102#return; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,750 INFO L290 TraceCheckUtils]: 38: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L290 TraceCheckUtils]: 37: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L290 TraceCheckUtils]: 36: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,750 INFO L272 TraceCheckUtils]: 35: Hoare triple {127762#(< ~counter~0 94)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,751 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {127298#true} {127762#(< ~counter~0 94)} #100#return; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,751 INFO L290 TraceCheckUtils]: 33: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,751 INFO L290 TraceCheckUtils]: 32: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,751 INFO L290 TraceCheckUtils]: 31: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,751 INFO L272 TraceCheckUtils]: 30: Hoare triple {127762#(< ~counter~0 94)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,752 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {127298#true} {127762#(< ~counter~0 94)} #98#return; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,752 INFO L290 TraceCheckUtils]: 28: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,752 INFO L290 TraceCheckUtils]: 27: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,752 INFO L272 TraceCheckUtils]: 25: Hoare triple {127762#(< ~counter~0 94)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,752 INFO L290 TraceCheckUtils]: 24: Hoare triple {127762#(< ~counter~0 94)} assume !!(#t~post8 < 100);havoc #t~post8; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,753 INFO L290 TraceCheckUtils]: 23: Hoare triple {127835#(< ~counter~0 93)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {127762#(< ~counter~0 94)} is VALID [2022-04-27 13:11:57,753 INFO L290 TraceCheckUtils]: 22: Hoare triple {127835#(< ~counter~0 93)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {127835#(< ~counter~0 93)} is VALID [2022-04-27 13:11:57,753 INFO L290 TraceCheckUtils]: 21: Hoare triple {127835#(< ~counter~0 93)} assume !!(#t~post7 < 100);havoc #t~post7; {127835#(< ~counter~0 93)} is VALID [2022-04-27 13:11:57,755 INFO L290 TraceCheckUtils]: 20: Hoare triple {127845#(< ~counter~0 92)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {127835#(< ~counter~0 93)} is VALID [2022-04-27 13:11:57,756 INFO L290 TraceCheckUtils]: 19: Hoare triple {127845#(< ~counter~0 92)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {127845#(< ~counter~0 92)} is VALID [2022-04-27 13:11:57,756 INFO L290 TraceCheckUtils]: 18: Hoare triple {127845#(< ~counter~0 92)} assume !!(#t~post6 < 100);havoc #t~post6; {127845#(< ~counter~0 92)} is VALID [2022-04-27 13:11:57,757 INFO L290 TraceCheckUtils]: 17: Hoare triple {127855#(< ~counter~0 91)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {127845#(< ~counter~0 92)} is VALID [2022-04-27 13:11:57,757 INFO L290 TraceCheckUtils]: 16: Hoare triple {127855#(< ~counter~0 91)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,757 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {127298#true} {127855#(< ~counter~0 91)} #96#return; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,757 INFO L290 TraceCheckUtils]: 14: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,757 INFO L290 TraceCheckUtils]: 13: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,757 INFO L290 TraceCheckUtils]: 12: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,757 INFO L272 TraceCheckUtils]: 11: Hoare triple {127855#(< ~counter~0 91)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,758 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127298#true} {127855#(< ~counter~0 91)} #94#return; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,758 INFO L290 TraceCheckUtils]: 9: Hoare triple {127298#true} assume true; {127298#true} is VALID [2022-04-27 13:11:57,758 INFO L290 TraceCheckUtils]: 8: Hoare triple {127298#true} assume !(0 == ~cond); {127298#true} is VALID [2022-04-27 13:11:57,758 INFO L290 TraceCheckUtils]: 7: Hoare triple {127298#true} ~cond := #in~cond; {127298#true} is VALID [2022-04-27 13:11:57,758 INFO L272 TraceCheckUtils]: 6: Hoare triple {127855#(< ~counter~0 91)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {127298#true} is VALID [2022-04-27 13:11:57,758 INFO L290 TraceCheckUtils]: 5: Hoare triple {127855#(< ~counter~0 91)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,759 INFO L272 TraceCheckUtils]: 4: Hoare triple {127855#(< ~counter~0 91)} call #t~ret9 := main(); {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,759 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127855#(< ~counter~0 91)} {127298#true} #108#return; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,759 INFO L290 TraceCheckUtils]: 2: Hoare triple {127855#(< ~counter~0 91)} assume true; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,759 INFO L290 TraceCheckUtils]: 1: Hoare triple {127298#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; {127855#(< ~counter~0 91)} is VALID [2022-04-27 13:11:57,760 INFO L272 TraceCheckUtils]: 0: Hoare triple {127298#true} call ULTIMATE.init(); {127298#true} is VALID [2022-04-27 13:11:57,760 INFO L134 CoverageAnalysis]: Checked inductivity of 187 backedges. 27 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-27 13:11:57,760 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:11:57,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1468876342] [2022-04-27 13:11:57,760 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:11:57,760 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [813655411] [2022-04-27 13:11:57,760 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [813655411] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:11:57,760 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:11:57,760 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-27 13:11:57,760 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [948874595] [2022-04-27 13:11:57,761 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:11:57,761 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 98 [2022-04-27 13:11:57,761 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:11:57,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:11:57,878 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:11:57,878 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-27 13:11:57,878 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:11:57,878 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-27 13:11:57,878 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-27 13:11:57,879 INFO L87 Difference]: Start difference. First operand 3133 states and 4367 transitions. Second operand has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:12:16,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:12:16,162 INFO L93 Difference]: Finished difference Result 7142 states and 10419 transitions. [2022-04-27 13:12:16,162 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 40 states. [2022-04-27 13:12:16,162 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 98 [2022-04-27 13:12:16,162 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:12:16,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:12:16,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 562 transitions. [2022-04-27 13:12:16,167 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:12:16,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 562 transitions. [2022-04-27 13:12:16,171 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 562 transitions. [2022-04-27 13:12:16,645 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 562 edges. 562 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:12:18,130 INFO L225 Difference]: With dead ends: 7142 [2022-04-27 13:12:18,130 INFO L226 Difference]: Without dead ends: 6010 [2022-04-27 13:12:18,133 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 212 GetRequests, 173 SyntacticMatches, 0 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 228 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=585, Invalid=1055, Unknown=0, NotChecked=0, Total=1640 [2022-04-27 13:12:18,134 INFO L413 NwaCegarLoop]: 113 mSDtfsCounter, 566 mSDsluCounter, 620 mSDsCounter, 0 mSdLazyCounter, 447 mSolverCounterSat, 294 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 566 SdHoareTripleChecker+Valid, 733 SdHoareTripleChecker+Invalid, 741 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 294 IncrementalHoareTripleChecker+Valid, 447 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-27 13:12:18,134 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [566 Valid, 733 Invalid, 741 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [294 Valid, 447 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-27 13:12:18,137 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6010 states. [2022-04-27 13:12:31,886 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6010 to 5700. [2022-04-27 13:12:31,886 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:12:31,893 INFO L82 GeneralOperation]: Start isEquivalent. First operand 6010 states. Second operand has 5700 states, 3784 states have (on average 1.2978329809725158) internal successors, (4911), 3806 states have internal predecessors, (4911), 1609 states have call successors, (1609), 308 states have call predecessors, (1609), 306 states have return successors, (1607), 1585 states have call predecessors, (1607), 1607 states have call successors, (1607) [2022-04-27 13:12:31,901 INFO L74 IsIncluded]: Start isIncluded. First operand 6010 states. Second operand has 5700 states, 3784 states have (on average 1.2978329809725158) internal successors, (4911), 3806 states have internal predecessors, (4911), 1609 states have call successors, (1609), 308 states have call predecessors, (1609), 306 states have return successors, (1607), 1585 states have call predecessors, (1607), 1607 states have call successors, (1607) [2022-04-27 13:12:31,908 INFO L87 Difference]: Start difference. First operand 6010 states. Second operand has 5700 states, 3784 states have (on average 1.2978329809725158) internal successors, (4911), 3806 states have internal predecessors, (4911), 1609 states have call successors, (1609), 308 states have call predecessors, (1609), 306 states have return successors, (1607), 1585 states have call predecessors, (1607), 1607 states have call successors, (1607) [2022-04-27 13:12:33,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:12:33,048 INFO L93 Difference]: Finished difference Result 6010 states and 8454 transitions. [2022-04-27 13:12:33,048 INFO L276 IsEmpty]: Start isEmpty. Operand 6010 states and 8454 transitions. [2022-04-27 13:12:33,058 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:12:33,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:12:33,066 INFO L74 IsIncluded]: Start isIncluded. First operand has 5700 states, 3784 states have (on average 1.2978329809725158) internal successors, (4911), 3806 states have internal predecessors, (4911), 1609 states have call successors, (1609), 308 states have call predecessors, (1609), 306 states have return successors, (1607), 1585 states have call predecessors, (1607), 1607 states have call successors, (1607) Second operand 6010 states. [2022-04-27 13:12:33,071 INFO L87 Difference]: Start difference. First operand has 5700 states, 3784 states have (on average 1.2978329809725158) internal successors, (4911), 3806 states have internal predecessors, (4911), 1609 states have call successors, (1609), 308 states have call predecessors, (1609), 306 states have return successors, (1607), 1585 states have call predecessors, (1607), 1607 states have call successors, (1607) Second operand 6010 states. [2022-04-27 13:12:34,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:12:34,068 INFO L93 Difference]: Finished difference Result 6010 states and 8454 transitions. [2022-04-27 13:12:34,068 INFO L276 IsEmpty]: Start isEmpty. Operand 6010 states and 8454 transitions. [2022-04-27 13:12:34,079 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:12:34,080 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:12:34,080 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:12:34,080 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:12:34,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5700 states, 3784 states have (on average 1.2978329809725158) internal successors, (4911), 3806 states have internal predecessors, (4911), 1609 states have call successors, (1609), 308 states have call predecessors, (1609), 306 states have return successors, (1607), 1585 states have call predecessors, (1607), 1607 states have call successors, (1607) [2022-04-27 13:12:35,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5700 states to 5700 states and 8127 transitions. [2022-04-27 13:12:35,470 INFO L78 Accepts]: Start accepts. Automaton has 5700 states and 8127 transitions. Word has length 98 [2022-04-27 13:12:35,470 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:12:35,470 INFO L495 AbstractCegarLoop]: Abstraction has 5700 states and 8127 transitions. [2022-04-27 13:12:35,471 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 4.0) internal successors, (96), 24 states have internal predecessors, (96), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:12:35,471 INFO L276 IsEmpty]: Start isEmpty. Operand 5700 states and 8127 transitions. [2022-04-27 13:12:35,472 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-27 13:12:35,472 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:12:35,472 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:12:35,488 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-27 13:12:35,672 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:12:35,672 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:12:35,672 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:12:35,673 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 2 times [2022-04-27 13:12:35,673 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:12:35,673 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1021116850] [2022-04-27 13:12:35,673 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:12:35,673 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:12:35,684 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:12:35,684 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [82752513] [2022-04-27 13:12:35,684 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:12:35,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:12:35,684 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:12:35,685 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:12:35,685 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-27 13:12:35,749 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:12:35,749 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:12:35,750 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-27 13:12:35,769 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:12:35,771 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:12:37,208 INFO L272 TraceCheckUtils]: 0: Hoare triple {158976#true} call ULTIMATE.init(); {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L290 TraceCheckUtils]: 1: Hoare triple {158976#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; {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L290 TraceCheckUtils]: 2: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {158976#true} {158976#true} #108#return; {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L272 TraceCheckUtils]: 4: Hoare triple {158976#true} call #t~ret9 := main(); {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L290 TraceCheckUtils]: 5: Hoare triple {158976#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L272 TraceCheckUtils]: 6: Hoare triple {158976#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,208 INFO L290 TraceCheckUtils]: 7: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L290 TraceCheckUtils]: 8: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L290 TraceCheckUtils]: 9: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {158976#true} {158976#true} #94#return; {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L272 TraceCheckUtils]: 11: Hoare triple {158976#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L290 TraceCheckUtils]: 12: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L290 TraceCheckUtils]: 13: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L290 TraceCheckUtils]: 14: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,209 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {158976#true} {158976#true} #96#return; {158976#true} is VALID [2022-04-27 13:12:37,211 INFO L290 TraceCheckUtils]: 16: Hoare triple {158976#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {159029#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {159029#(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; {159029#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,212 INFO L290 TraceCheckUtils]: 18: Hoare triple {159029#(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 < 100);havoc #t~post6; {159029#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,212 INFO L290 TraceCheckUtils]: 19: Hoare triple {159029#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {159039#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {159039#(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; {159039#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,213 INFO L290 TraceCheckUtils]: 21: Hoare triple {159039#(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 < 100);havoc #t~post7; {159039#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {159039#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,214 INFO L290 TraceCheckUtils]: 23: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,214 INFO L290 TraceCheckUtils]: 24: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,215 INFO L272 TraceCheckUtils]: 25: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,215 INFO L290 TraceCheckUtils]: 26: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,215 INFO L290 TraceCheckUtils]: 27: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,215 INFO L290 TraceCheckUtils]: 28: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,215 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {158976#true} {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,215 INFO L272 TraceCheckUtils]: 30: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,216 INFO L290 TraceCheckUtils]: 31: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,216 INFO L290 TraceCheckUtils]: 32: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,216 INFO L290 TraceCheckUtils]: 33: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,216 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {158976#true} {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,216 INFO L272 TraceCheckUtils]: 35: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,216 INFO L290 TraceCheckUtils]: 36: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,216 INFO L290 TraceCheckUtils]: 37: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,217 INFO L290 TraceCheckUtils]: 38: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,217 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {158976#true} {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,217 INFO L272 TraceCheckUtils]: 40: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,217 INFO L290 TraceCheckUtils]: 41: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,217 INFO L290 TraceCheckUtils]: 42: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,217 INFO L290 TraceCheckUtils]: 43: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,218 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {158976#true} {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,219 INFO L290 TraceCheckUtils]: 45: Hoare triple {159049#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,219 INFO L290 TraceCheckUtils]: 46: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,220 INFO L290 TraceCheckUtils]: 47: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,220 INFO L272 TraceCheckUtils]: 48: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,220 INFO L290 TraceCheckUtils]: 49: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,220 INFO L290 TraceCheckUtils]: 50: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,220 INFO L290 TraceCheckUtils]: 51: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,220 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {158976#true} {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,221 INFO L272 TraceCheckUtils]: 53: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,221 INFO L290 TraceCheckUtils]: 54: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,221 INFO L290 TraceCheckUtils]: 55: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,221 INFO L290 TraceCheckUtils]: 56: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,221 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {158976#true} {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,221 INFO L272 TraceCheckUtils]: 58: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,222 INFO L290 TraceCheckUtils]: 59: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,222 INFO L290 TraceCheckUtils]: 60: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,222 INFO L290 TraceCheckUtils]: 61: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,222 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {158976#true} {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,222 INFO L272 TraceCheckUtils]: 63: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,222 INFO L290 TraceCheckUtils]: 64: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,222 INFO L290 TraceCheckUtils]: 65: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,223 INFO L290 TraceCheckUtils]: 66: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,223 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {158976#true} {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,224 INFO L290 TraceCheckUtils]: 68: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,225 INFO L290 TraceCheckUtils]: 69: Hoare triple {159119#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {159192#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,225 INFO L290 TraceCheckUtils]: 70: Hoare triple {159192#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {159192#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,226 INFO L290 TraceCheckUtils]: 71: Hoare triple {159192#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {159192#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,226 INFO L290 TraceCheckUtils]: 72: Hoare triple {159192#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,227 INFO L290 TraceCheckUtils]: 73: Hoare triple {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,227 INFO L290 TraceCheckUtils]: 74: Hoare triple {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,227 INFO L272 TraceCheckUtils]: 75: Hoare triple {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,227 INFO L290 TraceCheckUtils]: 76: Hoare triple {158976#true} ~cond := #in~cond; {159215#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:12:37,228 INFO L290 TraceCheckUtils]: 77: Hoare triple {159215#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:37,228 INFO L290 TraceCheckUtils]: 78: Hoare triple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:37,229 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,229 INFO L272 TraceCheckUtils]: 80: Hoare triple {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,229 INFO L290 TraceCheckUtils]: 81: Hoare triple {158976#true} ~cond := #in~cond; {159215#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:12:37,229 INFO L290 TraceCheckUtils]: 82: Hoare triple {159215#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:37,229 INFO L290 TraceCheckUtils]: 83: Hoare triple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:37,230 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,230 INFO L272 TraceCheckUtils]: 85: Hoare triple {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,230 INFO L290 TraceCheckUtils]: 86: Hoare triple {158976#true} ~cond := #in~cond; {159215#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:12:37,231 INFO L290 TraceCheckUtils]: 87: Hoare triple {159215#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:37,231 INFO L290 TraceCheckUtils]: 88: Hoare triple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:12:37,232 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} {159202#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,232 INFO L272 TraceCheckUtils]: 90: Hoare triple {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:12:37,232 INFO L290 TraceCheckUtils]: 91: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:12:37,232 INFO L290 TraceCheckUtils]: 92: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:12:37,232 INFO L290 TraceCheckUtils]: 93: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:12:37,233 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {158976#true} {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #104#return; {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,233 INFO L290 TraceCheckUtils]: 95: Hoare triple {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,234 INFO L290 TraceCheckUtils]: 96: Hoare triple {159256#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,235 INFO L290 TraceCheckUtils]: 97: Hoare triple {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,235 INFO L290 TraceCheckUtils]: 98: Hoare triple {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,236 INFO L290 TraceCheckUtils]: 99: Hoare triple {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-27 13:12:37,236 INFO L290 TraceCheckUtils]: 100: Hoare triple {159278#(and (= main_~c~0 (+ main_~x~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {159291#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:12:37,237 INFO L290 TraceCheckUtils]: 101: Hoare triple {159291#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {159291#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:12:37,237 INFO L290 TraceCheckUtils]: 102: Hoare triple {159291#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {159291#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:12:37,238 INFO L290 TraceCheckUtils]: 103: Hoare triple {159291#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0))} assume !(0 != ~b~0); {159301#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} is VALID [2022-04-27 13:12:37,238 INFO L272 TraceCheckUtils]: 104: Hoare triple {159301#(and (= (+ main_~q~0 (* main_~p~0 3)) 1) (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {159305#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:12:37,239 INFO L290 TraceCheckUtils]: 105: Hoare triple {159305#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {159309#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:12:37,239 INFO L290 TraceCheckUtils]: 106: Hoare triple {159309#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {158977#false} is VALID [2022-04-27 13:12:37,239 INFO L290 TraceCheckUtils]: 107: Hoare triple {158977#false} assume !false; {158977#false} is VALID [2022-04-27 13:12:37,240 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 93 proven. 46 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2022-04-27 13:12:37,240 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:13:15,491 INFO L290 TraceCheckUtils]: 107: Hoare triple {158977#false} assume !false; {158977#false} is VALID [2022-04-27 13:13:15,492 INFO L290 TraceCheckUtils]: 106: Hoare triple {159309#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {158977#false} is VALID [2022-04-27 13:13:15,492 INFO L290 TraceCheckUtils]: 105: Hoare triple {159305#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {159309#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 13:13:15,493 INFO L272 TraceCheckUtils]: 104: Hoare triple {159325#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {159305#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 13:13:15,493 INFO L290 TraceCheckUtils]: 103: Hoare triple {159329#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {159325#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-27 13:13:15,494 INFO L290 TraceCheckUtils]: 102: Hoare triple {159329#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {159329#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:13:15,494 INFO L290 TraceCheckUtils]: 101: Hoare triple {159329#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {159329#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:13:15,706 INFO L290 TraceCheckUtils]: 100: Hoare triple {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {159329#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-27 13:13:15,706 INFO L290 TraceCheckUtils]: 99: Hoare triple {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,707 INFO L290 TraceCheckUtils]: 98: Hoare triple {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,707 INFO L290 TraceCheckUtils]: 97: Hoare triple {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,836 INFO L290 TraceCheckUtils]: 96: Hoare triple {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {159339#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,837 INFO L290 TraceCheckUtils]: 95: Hoare triple {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,837 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {158976#true} {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,838 INFO L290 TraceCheckUtils]: 93: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:15,838 INFO L290 TraceCheckUtils]: 92: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:15,838 INFO L290 TraceCheckUtils]: 91: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:15,838 INFO L272 TraceCheckUtils]: 90: Hoare triple {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:15,839 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} {159374#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {159352#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,839 INFO L290 TraceCheckUtils]: 88: Hoare triple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:13:15,839 INFO L290 TraceCheckUtils]: 87: Hoare triple {159384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:13:15,840 INFO L290 TraceCheckUtils]: 86: Hoare triple {158976#true} ~cond := #in~cond; {159384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:13:15,840 INFO L272 TraceCheckUtils]: 85: Hoare triple {159374#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:15,841 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} {159391#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {159374#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,841 INFO L290 TraceCheckUtils]: 83: Hoare triple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:13:15,841 INFO L290 TraceCheckUtils]: 82: Hoare triple {159384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:13:15,842 INFO L290 TraceCheckUtils]: 81: Hoare triple {158976#true} ~cond := #in~cond; {159384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:13:15,842 INFO L272 TraceCheckUtils]: 80: Hoare triple {159391#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:15,843 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {159391#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,843 INFO L290 TraceCheckUtils]: 78: Hoare triple {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:13:15,843 INFO L290 TraceCheckUtils]: 77: Hoare triple {159384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {159219#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 13:13:15,844 INFO L290 TraceCheckUtils]: 76: Hoare triple {158976#true} ~cond := #in~cond; {159384#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 13:13:15,844 INFO L272 TraceCheckUtils]: 75: Hoare triple {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:15,844 INFO L290 TraceCheckUtils]: 74: Hoare triple {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:15,845 INFO L290 TraceCheckUtils]: 73: Hoare triple {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:16,161 INFO L290 TraceCheckUtils]: 72: Hoare triple {158976#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {159407#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-27 13:13:16,161 INFO L290 TraceCheckUtils]: 71: Hoare triple {158976#true} assume !!(#t~post7 < 100);havoc #t~post7; {158976#true} is VALID [2022-04-27 13:13:16,161 INFO L290 TraceCheckUtils]: 70: Hoare triple {158976#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {158976#true} is VALID [2022-04-27 13:13:16,161 INFO L290 TraceCheckUtils]: 69: Hoare triple {158976#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {158976#true} is VALID [2022-04-27 13:13:16,161 INFO L290 TraceCheckUtils]: 68: Hoare triple {158976#true} assume !(~c~0 >= 2 * ~v~0); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {158976#true} {158976#true} #104#return; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 66: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 65: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 64: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L272 TraceCheckUtils]: 63: Hoare triple {158976#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {158976#true} {158976#true} #102#return; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 61: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 60: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 59: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L272 TraceCheckUtils]: 58: Hoare triple {158976#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {158976#true} {158976#true} #100#return; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 56: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 55: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 54: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L272 TraceCheckUtils]: 53: Hoare triple {158976#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {158976#true} {158976#true} #98#return; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 51: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 50: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 49: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L272 TraceCheckUtils]: 48: Hoare triple {158976#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 47: Hoare triple {158976#true} assume !!(#t~post8 < 100);havoc #t~post8; {158976#true} is VALID [2022-04-27 13:13:16,162 INFO L290 TraceCheckUtils]: 46: Hoare triple {158976#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 45: Hoare triple {158976#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {158976#true} {158976#true} #104#return; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 43: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 42: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 41: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L272 TraceCheckUtils]: 40: Hoare triple {158976#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {158976#true} {158976#true} #102#return; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 38: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 37: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 36: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L272 TraceCheckUtils]: 35: Hoare triple {158976#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {158976#true} {158976#true} #100#return; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 33: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 32: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 31: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L272 TraceCheckUtils]: 30: Hoare triple {158976#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {158976#true} {158976#true} #98#return; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 27: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,163 INFO L272 TraceCheckUtils]: 25: Hoare triple {158976#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 24: Hoare triple {158976#true} assume !!(#t~post8 < 100);havoc #t~post8; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 23: Hoare triple {158976#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 22: Hoare triple {158976#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 21: Hoare triple {158976#true} assume !!(#t~post7 < 100);havoc #t~post7; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 20: Hoare triple {158976#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 19: Hoare triple {158976#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 18: Hoare triple {158976#true} assume !!(#t~post6 < 100);havoc #t~post6; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 17: Hoare triple {158976#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 16: Hoare triple {158976#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {158976#true} {158976#true} #96#return; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 14: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 13: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 12: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L272 TraceCheckUtils]: 11: Hoare triple {158976#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {158976#true} {158976#true} #94#return; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 9: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 8: Hoare triple {158976#true} assume !(0 == ~cond); {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 7: Hoare triple {158976#true} ~cond := #in~cond; {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L272 TraceCheckUtils]: 6: Hoare triple {158976#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {158976#true} is VALID [2022-04-27 13:13:16,164 INFO L290 TraceCheckUtils]: 5: Hoare triple {158976#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {158976#true} is VALID [2022-04-27 13:13:16,165 INFO L272 TraceCheckUtils]: 4: Hoare triple {158976#true} call #t~ret9 := main(); {158976#true} is VALID [2022-04-27 13:13:16,165 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {158976#true} {158976#true} #108#return; {158976#true} is VALID [2022-04-27 13:13:16,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {158976#true} assume true; {158976#true} is VALID [2022-04-27 13:13:16,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {158976#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; {158976#true} is VALID [2022-04-27 13:13:16,165 INFO L272 TraceCheckUtils]: 0: Hoare triple {158976#true} call ULTIMATE.init(); {158976#true} is VALID [2022-04-27 13:13:16,167 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 117 proven. 12 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-04-27 13:13:16,167 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:13:16,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1021116850] [2022-04-27 13:13:16,167 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:13:16,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [82752513] [2022-04-27 13:13:16,167 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [82752513] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:13:16,167 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:13:16,168 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-27 13:13:16,168 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [306350088] [2022-04-27 13:13:16,168 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:13:16,168 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) Word has length 108 [2022-04-27 13:13:16,169 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:13:16,169 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:13:16,758 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:13:16,758 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-27 13:13:16,758 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:13:16,758 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-27 13:13:16,759 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-27 13:13:16,759 INFO L87 Difference]: Start difference. First operand 5700 states and 8127 transitions. Second operand has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:13:31,974 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:13:46,420 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.05s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-27 13:14:00,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:00,876 INFO L93 Difference]: Finished difference Result 6746 states and 9583 transitions. [2022-04-27 13:14:00,876 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-27 13:14:00,876 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) Word has length 108 [2022-04-27 13:14:00,876 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:14:00,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:14:00,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 307 transitions. [2022-04-27 13:14:00,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:14:00,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 307 transitions. [2022-04-27 13:14:00,882 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 307 transitions. [2022-04-27 13:14:04,116 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 307 edges. 307 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:14:06,092 INFO L225 Difference]: With dead ends: 6746 [2022-04-27 13:14:06,092 INFO L226 Difference]: Without dead ends: 6740 [2022-04-27 13:14:06,094 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 245 GetRequests, 201 SyntacticMatches, 3 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 364 ImplicationChecksByTransitivity, 3.1s TimeCoverageRelationStatistics Valid=340, Invalid=1466, Unknown=0, NotChecked=0, Total=1806 [2022-04-27 13:14:06,094 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 164 mSDsluCounter, 726 mSDsCounter, 0 mSdLazyCounter, 1437 mSolverCounterSat, 262 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 11.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 178 SdHoareTripleChecker+Valid, 803 SdHoareTripleChecker+Invalid, 1701 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 262 IncrementalHoareTripleChecker+Valid, 1437 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 11.0s IncrementalHoareTripleChecker+Time [2022-04-27 13:14:06,094 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [178 Valid, 803 Invalid, 1701 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [262 Valid, 1437 Invalid, 2 Unknown, 0 Unchecked, 11.0s Time] [2022-04-27 13:14:06,098 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 6740 states. [2022-04-27 13:14:21,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 6740 to 6125. [2022-04-27 13:14:21,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:14:21,218 INFO L82 GeneralOperation]: Start isEquivalent. First operand 6740 states. Second operand has 6125 states, 4000 states have (on average 1.30625) internal successors, (5225), 4022 states have internal predecessors, (5225), 1793 states have call successors, (1793), 333 states have call predecessors, (1793), 331 states have return successors, (1791), 1769 states have call predecessors, (1791), 1791 states have call successors, (1791) [2022-04-27 13:14:21,221 INFO L74 IsIncluded]: Start isIncluded. First operand 6740 states. Second operand has 6125 states, 4000 states have (on average 1.30625) internal successors, (5225), 4022 states have internal predecessors, (5225), 1793 states have call successors, (1793), 333 states have call predecessors, (1793), 331 states have return successors, (1791), 1769 states have call predecessors, (1791), 1791 states have call successors, (1791) [2022-04-27 13:14:21,225 INFO L87 Difference]: Start difference. First operand 6740 states. Second operand has 6125 states, 4000 states have (on average 1.30625) internal successors, (5225), 4022 states have internal predecessors, (5225), 1793 states have call successors, (1793), 333 states have call predecessors, (1793), 331 states have return successors, (1791), 1769 states have call predecessors, (1791), 1791 states have call successors, (1791) [2022-04-27 13:14:22,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:22,530 INFO L93 Difference]: Finished difference Result 6740 states and 9533 transitions. [2022-04-27 13:14:22,530 INFO L276 IsEmpty]: Start isEmpty. Operand 6740 states and 9533 transitions. [2022-04-27 13:14:22,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:14:22,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:14:22,545 INFO L74 IsIncluded]: Start isIncluded. First operand has 6125 states, 4000 states have (on average 1.30625) internal successors, (5225), 4022 states have internal predecessors, (5225), 1793 states have call successors, (1793), 333 states have call predecessors, (1793), 331 states have return successors, (1791), 1769 states have call predecessors, (1791), 1791 states have call successors, (1791) Second operand 6740 states. [2022-04-27 13:14:22,549 INFO L87 Difference]: Start difference. First operand has 6125 states, 4000 states have (on average 1.30625) internal successors, (5225), 4022 states have internal predecessors, (5225), 1793 states have call successors, (1793), 333 states have call predecessors, (1793), 331 states have return successors, (1791), 1769 states have call predecessors, (1791), 1791 states have call successors, (1791) Second operand 6740 states. [2022-04-27 13:14:23,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:23,787 INFO L93 Difference]: Finished difference Result 6740 states and 9533 transitions. [2022-04-27 13:14:23,787 INFO L276 IsEmpty]: Start isEmpty. Operand 6740 states and 9533 transitions. [2022-04-27 13:14:23,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:14:23,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:14:23,795 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:14:23,795 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:14:23,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6125 states, 4000 states have (on average 1.30625) internal successors, (5225), 4022 states have internal predecessors, (5225), 1793 states have call successors, (1793), 333 states have call predecessors, (1793), 331 states have return successors, (1791), 1769 states have call predecessors, (1791), 1791 states have call successors, (1791) [2022-04-27 13:14:25,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6125 states to 6125 states and 8809 transitions. [2022-04-27 13:14:25,384 INFO L78 Accepts]: Start accepts. Automaton has 6125 states and 8809 transitions. Word has length 108 [2022-04-27 13:14:25,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:14:25,384 INFO L495 AbstractCegarLoop]: Abstraction has 6125 states and 8809 transitions. [2022-04-27 13:14:25,384 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 20 states have (on average 3.45) internal successors, (69), 21 states have internal predecessors, (69), 11 states have call successors, (26), 2 states have call predecessors, (26), 2 states have return successors, (23), 8 states have call predecessors, (23), 9 states have call successors, (23) [2022-04-27 13:14:25,384 INFO L276 IsEmpty]: Start isEmpty. Operand 6125 states and 8809 transitions. [2022-04-27 13:14:25,385 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-27 13:14:25,385 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:14:25,385 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 6, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 13:14:25,401 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-27 13:14:25,585 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-27 13:14:25,586 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:14:25,586 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:14:25,586 INFO L85 PathProgramCache]: Analyzing trace with hash -193506847, now seen corresponding path program 1 times [2022-04-27 13:14:25,586 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:14:25,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [380625864] [2022-04-27 13:14:25,586 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:14:25,586 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:14:25,602 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:14:25,603 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [372561241] [2022-04-27 13:14:25,603 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:14:25,603 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:14:25,603 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:14:25,604 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:14:25,607 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-27 13:14:25,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:14:25,668 INFO L263 TraceCheckSpWp]: Trace formula consists of 322 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-27 13:14:25,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:14:25,693 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:14:26,190 INFO L272 TraceCheckUtils]: 0: Hoare triple {192248#true} call ULTIMATE.init(); {192248#true} is VALID [2022-04-27 13:14:26,191 INFO L290 TraceCheckUtils]: 1: Hoare triple {192248#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; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,191 INFO L290 TraceCheckUtils]: 2: Hoare triple {192256#(<= ~counter~0 0)} assume true; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {192256#(<= ~counter~0 0)} {192248#true} #108#return; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,192 INFO L272 TraceCheckUtils]: 4: Hoare triple {192256#(<= ~counter~0 0)} call #t~ret9 := main(); {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {192256#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,193 INFO L272 TraceCheckUtils]: 6: Hoare triple {192256#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {192256#(<= ~counter~0 0)} ~cond := #in~cond; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {192256#(<= ~counter~0 0)} assume !(0 == ~cond); {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,194 INFO L290 TraceCheckUtils]: 9: Hoare triple {192256#(<= ~counter~0 0)} assume true; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,194 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {192256#(<= ~counter~0 0)} {192256#(<= ~counter~0 0)} #94#return; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,194 INFO L272 TraceCheckUtils]: 11: Hoare triple {192256#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,195 INFO L290 TraceCheckUtils]: 12: Hoare triple {192256#(<= ~counter~0 0)} ~cond := #in~cond; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,195 INFO L290 TraceCheckUtils]: 13: Hoare triple {192256#(<= ~counter~0 0)} assume !(0 == ~cond); {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,195 INFO L290 TraceCheckUtils]: 14: Hoare triple {192256#(<= ~counter~0 0)} assume true; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,196 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {192256#(<= ~counter~0 0)} {192256#(<= ~counter~0 0)} #96#return; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {192256#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {192256#(<= ~counter~0 0)} is VALID [2022-04-27 13:14:26,198 INFO L290 TraceCheckUtils]: 17: Hoare triple {192256#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192305#(<= ~counter~0 1)} is VALID [2022-04-27 13:14:26,198 INFO L290 TraceCheckUtils]: 18: Hoare triple {192305#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {192305#(<= ~counter~0 1)} is VALID [2022-04-27 13:14:26,199 INFO L290 TraceCheckUtils]: 19: Hoare triple {192305#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192305#(<= ~counter~0 1)} is VALID [2022-04-27 13:14:26,199 INFO L290 TraceCheckUtils]: 20: Hoare triple {192305#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192315#(<= ~counter~0 2)} is VALID [2022-04-27 13:14:26,200 INFO L290 TraceCheckUtils]: 21: Hoare triple {192315#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {192315#(<= ~counter~0 2)} is VALID [2022-04-27 13:14:26,200 INFO L290 TraceCheckUtils]: 22: Hoare triple {192315#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192315#(<= ~counter~0 2)} is VALID [2022-04-27 13:14:26,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {192315#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,201 INFO L290 TraceCheckUtils]: 24: Hoare triple {192325#(<= ~counter~0 3)} assume !!(#t~post8 < 100);havoc #t~post8; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,202 INFO L272 TraceCheckUtils]: 25: Hoare triple {192325#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,202 INFO L290 TraceCheckUtils]: 26: Hoare triple {192325#(<= ~counter~0 3)} ~cond := #in~cond; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,202 INFO L290 TraceCheckUtils]: 27: Hoare triple {192325#(<= ~counter~0 3)} assume !(0 == ~cond); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,202 INFO L290 TraceCheckUtils]: 28: Hoare triple {192325#(<= ~counter~0 3)} assume true; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,203 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {192325#(<= ~counter~0 3)} {192325#(<= ~counter~0 3)} #98#return; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,203 INFO L272 TraceCheckUtils]: 30: Hoare triple {192325#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,204 INFO L290 TraceCheckUtils]: 31: Hoare triple {192325#(<= ~counter~0 3)} ~cond := #in~cond; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,204 INFO L290 TraceCheckUtils]: 32: Hoare triple {192325#(<= ~counter~0 3)} assume !(0 == ~cond); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,204 INFO L290 TraceCheckUtils]: 33: Hoare triple {192325#(<= ~counter~0 3)} assume true; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,205 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {192325#(<= ~counter~0 3)} {192325#(<= ~counter~0 3)} #100#return; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,205 INFO L272 TraceCheckUtils]: 35: Hoare triple {192325#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,205 INFO L290 TraceCheckUtils]: 36: Hoare triple {192325#(<= ~counter~0 3)} ~cond := #in~cond; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,206 INFO L290 TraceCheckUtils]: 37: Hoare triple {192325#(<= ~counter~0 3)} assume !(0 == ~cond); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,206 INFO L290 TraceCheckUtils]: 38: Hoare triple {192325#(<= ~counter~0 3)} assume true; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,206 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {192325#(<= ~counter~0 3)} {192325#(<= ~counter~0 3)} #102#return; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,207 INFO L272 TraceCheckUtils]: 40: Hoare triple {192325#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,207 INFO L290 TraceCheckUtils]: 41: Hoare triple {192325#(<= ~counter~0 3)} ~cond := #in~cond; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,207 INFO L290 TraceCheckUtils]: 42: Hoare triple {192325#(<= ~counter~0 3)} assume !(0 == ~cond); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,207 INFO L290 TraceCheckUtils]: 43: Hoare triple {192325#(<= ~counter~0 3)} assume true; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,208 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {192325#(<= ~counter~0 3)} {192325#(<= ~counter~0 3)} #104#return; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,208 INFO L290 TraceCheckUtils]: 45: Hoare triple {192325#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,208 INFO L290 TraceCheckUtils]: 46: Hoare triple {192325#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192325#(<= ~counter~0 3)} is VALID [2022-04-27 13:14:26,209 INFO L290 TraceCheckUtils]: 47: Hoare triple {192325#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192398#(<= ~counter~0 4)} is VALID [2022-04-27 13:14:26,209 INFO L290 TraceCheckUtils]: 48: Hoare triple {192398#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {192398#(<= ~counter~0 4)} is VALID [2022-04-27 13:14:26,210 INFO L290 TraceCheckUtils]: 49: Hoare triple {192398#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {192398#(<= ~counter~0 4)} is VALID [2022-04-27 13:14:26,210 INFO L290 TraceCheckUtils]: 50: Hoare triple {192398#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {192398#(<= ~counter~0 4)} is VALID [2022-04-27 13:14:26,211 INFO L290 TraceCheckUtils]: 51: Hoare triple {192398#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192411#(<= ~counter~0 5)} is VALID [2022-04-27 13:14:26,211 INFO L290 TraceCheckUtils]: 52: Hoare triple {192411#(<= ~counter~0 5)} assume !!(#t~post6 < 100);havoc #t~post6; {192411#(<= ~counter~0 5)} is VALID [2022-04-27 13:14:26,211 INFO L290 TraceCheckUtils]: 53: Hoare triple {192411#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192411#(<= ~counter~0 5)} is VALID [2022-04-27 13:14:26,212 INFO L290 TraceCheckUtils]: 54: Hoare triple {192411#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192421#(<= ~counter~0 6)} is VALID [2022-04-27 13:14:26,212 INFO L290 TraceCheckUtils]: 55: Hoare triple {192421#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {192421#(<= ~counter~0 6)} is VALID [2022-04-27 13:14:26,212 INFO L290 TraceCheckUtils]: 56: Hoare triple {192421#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192421#(<= ~counter~0 6)} is VALID [2022-04-27 13:14:26,213 INFO L290 TraceCheckUtils]: 57: Hoare triple {192421#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,213 INFO L290 TraceCheckUtils]: 58: Hoare triple {192431#(<= ~counter~0 7)} assume !!(#t~post8 < 100);havoc #t~post8; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,214 INFO L272 TraceCheckUtils]: 59: Hoare triple {192431#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,214 INFO L290 TraceCheckUtils]: 60: Hoare triple {192431#(<= ~counter~0 7)} ~cond := #in~cond; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,214 INFO L290 TraceCheckUtils]: 61: Hoare triple {192431#(<= ~counter~0 7)} assume !(0 == ~cond); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,215 INFO L290 TraceCheckUtils]: 62: Hoare triple {192431#(<= ~counter~0 7)} assume true; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,215 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {192431#(<= ~counter~0 7)} {192431#(<= ~counter~0 7)} #98#return; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,216 INFO L272 TraceCheckUtils]: 64: Hoare triple {192431#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,216 INFO L290 TraceCheckUtils]: 65: Hoare triple {192431#(<= ~counter~0 7)} ~cond := #in~cond; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,216 INFO L290 TraceCheckUtils]: 66: Hoare triple {192431#(<= ~counter~0 7)} assume !(0 == ~cond); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,216 INFO L290 TraceCheckUtils]: 67: Hoare triple {192431#(<= ~counter~0 7)} assume true; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,217 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {192431#(<= ~counter~0 7)} {192431#(<= ~counter~0 7)} #100#return; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,217 INFO L272 TraceCheckUtils]: 69: Hoare triple {192431#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,217 INFO L290 TraceCheckUtils]: 70: Hoare triple {192431#(<= ~counter~0 7)} ~cond := #in~cond; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,218 INFO L290 TraceCheckUtils]: 71: Hoare triple {192431#(<= ~counter~0 7)} assume !(0 == ~cond); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,218 INFO L290 TraceCheckUtils]: 72: Hoare triple {192431#(<= ~counter~0 7)} assume true; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,218 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {192431#(<= ~counter~0 7)} {192431#(<= ~counter~0 7)} #102#return; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,219 INFO L272 TraceCheckUtils]: 74: Hoare triple {192431#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,220 INFO L290 TraceCheckUtils]: 75: Hoare triple {192431#(<= ~counter~0 7)} ~cond := #in~cond; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,220 INFO L290 TraceCheckUtils]: 76: Hoare triple {192431#(<= ~counter~0 7)} assume !(0 == ~cond); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,220 INFO L290 TraceCheckUtils]: 77: Hoare triple {192431#(<= ~counter~0 7)} assume true; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,221 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {192431#(<= ~counter~0 7)} {192431#(<= ~counter~0 7)} #104#return; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,221 INFO L290 TraceCheckUtils]: 79: Hoare triple {192431#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,221 INFO L290 TraceCheckUtils]: 80: Hoare triple {192431#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192431#(<= ~counter~0 7)} is VALID [2022-04-27 13:14:26,222 INFO L290 TraceCheckUtils]: 81: Hoare triple {192431#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192504#(<= ~counter~0 8)} is VALID [2022-04-27 13:14:26,222 INFO L290 TraceCheckUtils]: 82: Hoare triple {192504#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {192504#(<= ~counter~0 8)} is VALID [2022-04-27 13:14:26,222 INFO L290 TraceCheckUtils]: 83: Hoare triple {192504#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {192504#(<= ~counter~0 8)} is VALID [2022-04-27 13:14:26,223 INFO L290 TraceCheckUtils]: 84: Hoare triple {192504#(<= ~counter~0 8)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {192504#(<= ~counter~0 8)} is VALID [2022-04-27 13:14:26,223 INFO L290 TraceCheckUtils]: 85: Hoare triple {192504#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192517#(<= ~counter~0 9)} is VALID [2022-04-27 13:14:26,224 INFO L290 TraceCheckUtils]: 86: Hoare triple {192517#(<= ~counter~0 9)} assume !!(#t~post6 < 100);havoc #t~post6; {192517#(<= ~counter~0 9)} is VALID [2022-04-27 13:14:26,224 INFO L290 TraceCheckUtils]: 87: Hoare triple {192517#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192517#(<= ~counter~0 9)} is VALID [2022-04-27 13:14:26,225 INFO L290 TraceCheckUtils]: 88: Hoare triple {192517#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192527#(<= ~counter~0 10)} is VALID [2022-04-27 13:14:26,225 INFO L290 TraceCheckUtils]: 89: Hoare triple {192527#(<= ~counter~0 10)} assume !!(#t~post7 < 100);havoc #t~post7; {192527#(<= ~counter~0 10)} is VALID [2022-04-27 13:14:26,225 INFO L290 TraceCheckUtils]: 90: Hoare triple {192527#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192527#(<= ~counter~0 10)} is VALID [2022-04-27 13:14:26,225 INFO L290 TraceCheckUtils]: 91: Hoare triple {192527#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192537#(<= |main_#t~post8| 10)} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 92: Hoare triple {192537#(<= |main_#t~post8| 10)} assume !(#t~post8 < 100);havoc #t~post8; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 93: Hoare triple {192249#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 94: Hoare triple {192249#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 95: Hoare triple {192249#false} assume !!(#t~post7 < 100);havoc #t~post7; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 96: Hoare triple {192249#false} assume !(~c~0 >= ~b~0); {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 97: Hoare triple {192249#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; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 98: Hoare triple {192249#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 99: Hoare triple {192249#false} assume !!(#t~post6 < 100);havoc #t~post6; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 100: Hoare triple {192249#false} assume !(0 != ~b~0); {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L272 TraceCheckUtils]: 101: Hoare triple {192249#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 102: Hoare triple {192249#false} ~cond := #in~cond; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 103: Hoare triple {192249#false} assume 0 == ~cond; {192249#false} is VALID [2022-04-27 13:14:26,226 INFO L290 TraceCheckUtils]: 104: Hoare triple {192249#false} assume !false; {192249#false} is VALID [2022-04-27 13:14:26,227 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 44 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-27 13:14:26,227 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 104: Hoare triple {192249#false} assume !false; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 103: Hoare triple {192249#false} assume 0 == ~cond; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 102: Hoare triple {192249#false} ~cond := #in~cond; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L272 TraceCheckUtils]: 101: Hoare triple {192249#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 100: Hoare triple {192249#false} assume !(0 != ~b~0); {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 99: Hoare triple {192249#false} assume !!(#t~post6 < 100);havoc #t~post6; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 98: Hoare triple {192249#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 97: Hoare triple {192249#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; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 96: Hoare triple {192249#false} assume !(~c~0 >= ~b~0); {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 95: Hoare triple {192249#false} assume !!(#t~post7 < 100);havoc #t~post7; {192249#false} is VALID [2022-04-27 13:14:26,775 INFO L290 TraceCheckUtils]: 94: Hoare triple {192249#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192249#false} is VALID [2022-04-27 13:14:26,776 INFO L290 TraceCheckUtils]: 93: Hoare triple {192249#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192249#false} is VALID [2022-04-27 13:14:26,776 INFO L290 TraceCheckUtils]: 92: Hoare triple {192613#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {192249#false} is VALID [2022-04-27 13:14:26,776 INFO L290 TraceCheckUtils]: 91: Hoare triple {192617#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192613#(< |main_#t~post8| 100)} is VALID [2022-04-27 13:14:26,776 INFO L290 TraceCheckUtils]: 90: Hoare triple {192617#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192617#(< ~counter~0 100)} is VALID [2022-04-27 13:14:26,777 INFO L290 TraceCheckUtils]: 89: Hoare triple {192617#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {192617#(< ~counter~0 100)} is VALID [2022-04-27 13:14:26,778 INFO L290 TraceCheckUtils]: 88: Hoare triple {192627#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192617#(< ~counter~0 100)} is VALID [2022-04-27 13:14:26,778 INFO L290 TraceCheckUtils]: 87: Hoare triple {192627#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192627#(< ~counter~0 99)} is VALID [2022-04-27 13:14:26,779 INFO L290 TraceCheckUtils]: 86: Hoare triple {192627#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {192627#(< ~counter~0 99)} is VALID [2022-04-27 13:14:26,779 INFO L290 TraceCheckUtils]: 85: Hoare triple {192637#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192627#(< ~counter~0 99)} is VALID [2022-04-27 13:14:26,780 INFO L290 TraceCheckUtils]: 84: Hoare triple {192637#(< ~counter~0 98)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {192637#(< ~counter~0 98)} is VALID [2022-04-27 13:14:26,780 INFO L290 TraceCheckUtils]: 83: Hoare triple {192637#(< ~counter~0 98)} assume !(~c~0 >= ~b~0); {192637#(< ~counter~0 98)} is VALID [2022-04-27 13:14:26,780 INFO L290 TraceCheckUtils]: 82: Hoare triple {192637#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {192637#(< ~counter~0 98)} is VALID [2022-04-27 13:14:26,781 INFO L290 TraceCheckUtils]: 81: Hoare triple {192650#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192637#(< ~counter~0 98)} is VALID [2022-04-27 13:14:26,781 INFO L290 TraceCheckUtils]: 80: Hoare triple {192650#(< ~counter~0 97)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,781 INFO L290 TraceCheckUtils]: 79: Hoare triple {192650#(< ~counter~0 97)} assume !(~c~0 >= 2 * ~v~0); {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,782 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {192248#true} {192650#(< ~counter~0 97)} #104#return; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,782 INFO L290 TraceCheckUtils]: 77: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,782 INFO L290 TraceCheckUtils]: 76: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,782 INFO L290 TraceCheckUtils]: 75: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,782 INFO L272 TraceCheckUtils]: 74: Hoare triple {192650#(< ~counter~0 97)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {192248#true} {192650#(< ~counter~0 97)} #102#return; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,783 INFO L290 TraceCheckUtils]: 72: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L290 TraceCheckUtils]: 71: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L290 TraceCheckUtils]: 70: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L272 TraceCheckUtils]: 69: Hoare triple {192650#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {192248#true} {192650#(< ~counter~0 97)} #100#return; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,783 INFO L290 TraceCheckUtils]: 67: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L290 TraceCheckUtils]: 66: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L290 TraceCheckUtils]: 65: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,783 INFO L272 TraceCheckUtils]: 64: Hoare triple {192650#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,784 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {192248#true} {192650#(< ~counter~0 97)} #98#return; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,784 INFO L290 TraceCheckUtils]: 62: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,784 INFO L290 TraceCheckUtils]: 61: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,784 INFO L290 TraceCheckUtils]: 60: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,784 INFO L272 TraceCheckUtils]: 59: Hoare triple {192650#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,784 INFO L290 TraceCheckUtils]: 58: Hoare triple {192650#(< ~counter~0 97)} assume !!(#t~post8 < 100);havoc #t~post8; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,785 INFO L290 TraceCheckUtils]: 57: Hoare triple {192723#(< ~counter~0 96)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192650#(< ~counter~0 97)} is VALID [2022-04-27 13:14:26,785 INFO L290 TraceCheckUtils]: 56: Hoare triple {192723#(< ~counter~0 96)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192723#(< ~counter~0 96)} is VALID [2022-04-27 13:14:26,786 INFO L290 TraceCheckUtils]: 55: Hoare triple {192723#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {192723#(< ~counter~0 96)} is VALID [2022-04-27 13:14:26,786 INFO L290 TraceCheckUtils]: 54: Hoare triple {192733#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192723#(< ~counter~0 96)} is VALID [2022-04-27 13:14:26,787 INFO L290 TraceCheckUtils]: 53: Hoare triple {192733#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192733#(< ~counter~0 95)} is VALID [2022-04-27 13:14:26,787 INFO L290 TraceCheckUtils]: 52: Hoare triple {192733#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {192733#(< ~counter~0 95)} is VALID [2022-04-27 13:14:26,788 INFO L290 TraceCheckUtils]: 51: Hoare triple {192743#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192733#(< ~counter~0 95)} is VALID [2022-04-27 13:14:26,788 INFO L290 TraceCheckUtils]: 50: Hoare triple {192743#(< ~counter~0 94)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {192743#(< ~counter~0 94)} is VALID [2022-04-27 13:14:26,788 INFO L290 TraceCheckUtils]: 49: Hoare triple {192743#(< ~counter~0 94)} assume !(~c~0 >= ~b~0); {192743#(< ~counter~0 94)} is VALID [2022-04-27 13:14:26,788 INFO L290 TraceCheckUtils]: 48: Hoare triple {192743#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {192743#(< ~counter~0 94)} is VALID [2022-04-27 13:14:26,789 INFO L290 TraceCheckUtils]: 47: Hoare triple {192756#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192743#(< ~counter~0 94)} is VALID [2022-04-27 13:14:26,789 INFO L290 TraceCheckUtils]: 46: Hoare triple {192756#(< ~counter~0 93)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,790 INFO L290 TraceCheckUtils]: 45: Hoare triple {192756#(< ~counter~0 93)} assume !(~c~0 >= 2 * ~v~0); {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,790 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {192248#true} {192756#(< ~counter~0 93)} #104#return; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,790 INFO L290 TraceCheckUtils]: 43: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,790 INFO L290 TraceCheckUtils]: 42: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,790 INFO L290 TraceCheckUtils]: 41: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,790 INFO L272 TraceCheckUtils]: 40: Hoare triple {192756#(< ~counter~0 93)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,799 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {192248#true} {192756#(< ~counter~0 93)} #102#return; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,799 INFO L290 TraceCheckUtils]: 38: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,799 INFO L290 TraceCheckUtils]: 37: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,799 INFO L290 TraceCheckUtils]: 36: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,799 INFO L272 TraceCheckUtils]: 35: Hoare triple {192756#(< ~counter~0 93)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {192248#true} {192756#(< ~counter~0 93)} #100#return; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,800 INFO L290 TraceCheckUtils]: 33: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L290 TraceCheckUtils]: 32: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L290 TraceCheckUtils]: 31: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L272 TraceCheckUtils]: 30: Hoare triple {192756#(< ~counter~0 93)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {192248#true} {192756#(< ~counter~0 93)} #98#return; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,800 INFO L290 TraceCheckUtils]: 28: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L290 TraceCheckUtils]: 27: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L290 TraceCheckUtils]: 26: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,800 INFO L272 TraceCheckUtils]: 25: Hoare triple {192756#(< ~counter~0 93)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,801 INFO L290 TraceCheckUtils]: 24: Hoare triple {192756#(< ~counter~0 93)} assume !!(#t~post8 < 100);havoc #t~post8; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,802 INFO L290 TraceCheckUtils]: 23: Hoare triple {192829#(< ~counter~0 92)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {192756#(< ~counter~0 93)} is VALID [2022-04-27 13:14:26,802 INFO L290 TraceCheckUtils]: 22: Hoare triple {192829#(< ~counter~0 92)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {192829#(< ~counter~0 92)} is VALID [2022-04-27 13:14:26,802 INFO L290 TraceCheckUtils]: 21: Hoare triple {192829#(< ~counter~0 92)} assume !!(#t~post7 < 100);havoc #t~post7; {192829#(< ~counter~0 92)} is VALID [2022-04-27 13:14:26,803 INFO L290 TraceCheckUtils]: 20: Hoare triple {192839#(< ~counter~0 91)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {192829#(< ~counter~0 92)} is VALID [2022-04-27 13:14:26,803 INFO L290 TraceCheckUtils]: 19: Hoare triple {192839#(< ~counter~0 91)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {192839#(< ~counter~0 91)} is VALID [2022-04-27 13:14:26,803 INFO L290 TraceCheckUtils]: 18: Hoare triple {192839#(< ~counter~0 91)} assume !!(#t~post6 < 100);havoc #t~post6; {192839#(< ~counter~0 91)} is VALID [2022-04-27 13:14:26,804 INFO L290 TraceCheckUtils]: 17: Hoare triple {192849#(< ~counter~0 90)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {192839#(< ~counter~0 91)} is VALID [2022-04-27 13:14:26,804 INFO L290 TraceCheckUtils]: 16: Hoare triple {192849#(< ~counter~0 90)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,805 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {192248#true} {192849#(< ~counter~0 90)} #96#return; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,805 INFO L290 TraceCheckUtils]: 14: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,805 INFO L290 TraceCheckUtils]: 13: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,805 INFO L290 TraceCheckUtils]: 12: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,805 INFO L272 TraceCheckUtils]: 11: Hoare triple {192849#(< ~counter~0 90)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,805 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {192248#true} {192849#(< ~counter~0 90)} #94#return; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,805 INFO L290 TraceCheckUtils]: 9: Hoare triple {192248#true} assume true; {192248#true} is VALID [2022-04-27 13:14:26,805 INFO L290 TraceCheckUtils]: 8: Hoare triple {192248#true} assume !(0 == ~cond); {192248#true} is VALID [2022-04-27 13:14:26,806 INFO L290 TraceCheckUtils]: 7: Hoare triple {192248#true} ~cond := #in~cond; {192248#true} is VALID [2022-04-27 13:14:26,806 INFO L272 TraceCheckUtils]: 6: Hoare triple {192849#(< ~counter~0 90)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {192248#true} is VALID [2022-04-27 13:14:26,806 INFO L290 TraceCheckUtils]: 5: Hoare triple {192849#(< ~counter~0 90)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,806 INFO L272 TraceCheckUtils]: 4: Hoare triple {192849#(< ~counter~0 90)} call #t~ret9 := main(); {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,806 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {192849#(< ~counter~0 90)} {192248#true} #108#return; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,807 INFO L290 TraceCheckUtils]: 2: Hoare triple {192849#(< ~counter~0 90)} assume true; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {192248#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; {192849#(< ~counter~0 90)} is VALID [2022-04-27 13:14:26,807 INFO L272 TraceCheckUtils]: 0: Hoare triple {192248#true} call ULTIMATE.init(); {192248#true} is VALID [2022-04-27 13:14:26,807 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 44 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-27 13:14:26,807 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:14:26,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [380625864] [2022-04-27 13:14:26,808 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:14:26,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [372561241] [2022-04-27 13:14:26,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [372561241] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:14:26,808 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:14:26,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-27 13:14:26,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [259559329] [2022-04-27 13:14:26,808 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:14:26,808 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 105 [2022-04-27 13:14:26,809 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:14:26,809 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:14:26,938 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:14:26,939 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-04-27 13:14:26,939 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:14:26,939 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-04-27 13:14:26,939 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-27 13:14:26,939 INFO L87 Difference]: Start difference. First operand 6125 states and 8809 transitions. Second operand has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:14:52,759 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:14:52,759 INFO L93 Difference]: Finished difference Result 10652 states and 15480 transitions. [2022-04-27 13:14:52,759 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 44 states. [2022-04-27 13:14:52,760 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) Word has length 105 [2022-04-27 13:14:52,760 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 13:14:52,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:14:52,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 600 transitions. [2022-04-27 13:14:52,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:14:52,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 600 transitions. [2022-04-27 13:14:52,768 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 44 states and 600 transitions. [2022-04-27 13:14:53,318 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 600 edges. 600 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:14:55,797 INFO L225 Difference]: With dead ends: 10652 [2022-04-27 13:14:55,797 INFO L226 Difference]: Without dead ends: 7130 [2022-04-27 13:14:55,803 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 228 GetRequests, 185 SyntacticMatches, 0 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 282 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=708, Invalid=1272, Unknown=0, NotChecked=0, Total=1980 [2022-04-27 13:14:55,804 INFO L413 NwaCegarLoop]: 120 mSDtfsCounter, 775 mSDsluCounter, 473 mSDsCounter, 0 mSdLazyCounter, 394 mSolverCounterSat, 509 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 775 SdHoareTripleChecker+Valid, 593 SdHoareTripleChecker+Invalid, 903 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 509 IncrementalHoareTripleChecker+Valid, 394 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-27 13:14:55,804 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [775 Valid, 593 Invalid, 903 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [509 Valid, 394 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-27 13:14:55,807 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 7130 states. [2022-04-27 13:15:14,388 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 7130 to 6955. [2022-04-27 13:15:14,388 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 13:15:14,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 7130 states. Second operand has 6955 states, 4488 states have (on average 1.2210338680926915) internal successors, (5480), 4506 states have internal predecessors, (5480), 2089 states have call successors, (2089), 379 states have call predecessors, (2089), 377 states have return successors, (2087), 2069 states have call predecessors, (2087), 2087 states have call successors, (2087) [2022-04-27 13:15:14,399 INFO L74 IsIncluded]: Start isIncluded. First operand 7130 states. Second operand has 6955 states, 4488 states have (on average 1.2210338680926915) internal successors, (5480), 4506 states have internal predecessors, (5480), 2089 states have call successors, (2089), 379 states have call predecessors, (2089), 377 states have return successors, (2087), 2069 states have call predecessors, (2087), 2087 states have call successors, (2087) [2022-04-27 13:15:14,404 INFO L87 Difference]: Start difference. First operand 7130 states. Second operand has 6955 states, 4488 states have (on average 1.2210338680926915) internal successors, (5480), 4506 states have internal predecessors, (5480), 2089 states have call successors, (2089), 379 states have call predecessors, (2089), 377 states have return successors, (2087), 2069 states have call predecessors, (2087), 2087 states have call successors, (2087) [2022-04-27 13:15:15,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:15,836 INFO L93 Difference]: Finished difference Result 7130 states and 9832 transitions. [2022-04-27 13:15:15,836 INFO L276 IsEmpty]: Start isEmpty. Operand 7130 states and 9832 transitions. [2022-04-27 13:15:15,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:15,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:15,853 INFO L74 IsIncluded]: Start isIncluded. First operand has 6955 states, 4488 states have (on average 1.2210338680926915) internal successors, (5480), 4506 states have internal predecessors, (5480), 2089 states have call successors, (2089), 379 states have call predecessors, (2089), 377 states have return successors, (2087), 2069 states have call predecessors, (2087), 2087 states have call successors, (2087) Second operand 7130 states. [2022-04-27 13:15:15,857 INFO L87 Difference]: Start difference. First operand has 6955 states, 4488 states have (on average 1.2210338680926915) internal successors, (5480), 4506 states have internal predecessors, (5480), 2089 states have call successors, (2089), 379 states have call predecessors, (2089), 377 states have return successors, (2087), 2069 states have call predecessors, (2087), 2087 states have call successors, (2087) Second operand 7130 states. [2022-04-27 13:15:17,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 13:15:17,434 INFO L93 Difference]: Finished difference Result 7130 states and 9832 transitions. [2022-04-27 13:15:17,434 INFO L276 IsEmpty]: Start isEmpty. Operand 7130 states and 9832 transitions. [2022-04-27 13:15:17,444 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 13:15:17,444 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 13:15:17,444 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 13:15:17,444 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 13:15:17,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6955 states, 4488 states have (on average 1.2210338680926915) internal successors, (5480), 4506 states have internal predecessors, (5480), 2089 states have call successors, (2089), 379 states have call predecessors, (2089), 377 states have return successors, (2087), 2069 states have call predecessors, (2087), 2087 states have call successors, (2087) [2022-04-27 13:15:19,594 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6955 states to 6955 states and 9656 transitions. [2022-04-27 13:15:19,595 INFO L78 Accepts]: Start accepts. Automaton has 6955 states and 9656 transitions. Word has length 105 [2022-04-27 13:15:19,595 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 13:15:19,595 INFO L495 AbstractCegarLoop]: Abstraction has 6955 states and 9656 transitions. [2022-04-27 13:15:19,595 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 4.076923076923077) internal successors, (106), 26 states have internal predecessors, (106), 8 states have call successors, (24), 6 states have call predecessors, (24), 5 states have return successors, (22), 6 states have call predecessors, (22), 7 states have call successors, (22) [2022-04-27 13:15:19,595 INFO L276 IsEmpty]: Start isEmpty. Operand 6955 states and 9656 transitions. [2022-04-27 13:15:19,597 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2022-04-27 13:15:19,597 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 13:15:19,597 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 7, 7, 5, 4, 4, 4, 4, 3, 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] [2022-04-27 13:15:19,620 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-27 13:15:19,811 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-27 13:15:19,811 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 13:15:19,812 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 13:15:19,812 INFO L85 PathProgramCache]: Analyzing trace with hash 862891816, now seen corresponding path program 2 times [2022-04-27 13:15:19,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 13:15:19,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1164013191] [2022-04-27 13:15:19,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 13:15:19,812 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 13:15:19,826 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 13:15:19,826 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [37740066] [2022-04-27 13:15:19,827 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 13:15:19,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 13:15:19,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 13:15:19,828 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 13:15:19,829 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-27 13:15:19,901 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 13:15:19,902 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 13:15:19,903 INFO L263 TraceCheckSpWp]: Trace formula consists of 387 conjuncts, 33 conjunts are in the unsatisfiable core [2022-04-27 13:15:19,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 13:15:19,931 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 13:15:20,617 INFO L272 TraceCheckUtils]: 0: Hoare triple {233576#true} call ULTIMATE.init(); {233576#true} is VALID [2022-04-27 13:15:20,618 INFO L290 TraceCheckUtils]: 1: Hoare triple {233576#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; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,618 INFO L290 TraceCheckUtils]: 2: Hoare triple {233584#(<= ~counter~0 0)} assume true; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,618 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {233584#(<= ~counter~0 0)} {233576#true} #108#return; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,619 INFO L272 TraceCheckUtils]: 4: Hoare triple {233584#(<= ~counter~0 0)} call #t~ret9 := main(); {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,619 INFO L290 TraceCheckUtils]: 5: Hoare triple {233584#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,620 INFO L272 TraceCheckUtils]: 6: Hoare triple {233584#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,620 INFO L290 TraceCheckUtils]: 7: Hoare triple {233584#(<= ~counter~0 0)} ~cond := #in~cond; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {233584#(<= ~counter~0 0)} assume !(0 == ~cond); {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,620 INFO L290 TraceCheckUtils]: 9: Hoare triple {233584#(<= ~counter~0 0)} assume true; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,621 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {233584#(<= ~counter~0 0)} {233584#(<= ~counter~0 0)} #94#return; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,621 INFO L272 TraceCheckUtils]: 11: Hoare triple {233584#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,622 INFO L290 TraceCheckUtils]: 12: Hoare triple {233584#(<= ~counter~0 0)} ~cond := #in~cond; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,622 INFO L290 TraceCheckUtils]: 13: Hoare triple {233584#(<= ~counter~0 0)} assume !(0 == ~cond); {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,622 INFO L290 TraceCheckUtils]: 14: Hoare triple {233584#(<= ~counter~0 0)} assume true; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,623 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {233584#(<= ~counter~0 0)} {233584#(<= ~counter~0 0)} #96#return; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,623 INFO L290 TraceCheckUtils]: 16: Hoare triple {233584#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {233584#(<= ~counter~0 0)} is VALID [2022-04-27 13:15:20,625 INFO L290 TraceCheckUtils]: 17: Hoare triple {233584#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233633#(<= ~counter~0 1)} is VALID [2022-04-27 13:15:20,625 INFO L290 TraceCheckUtils]: 18: Hoare triple {233633#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {233633#(<= ~counter~0 1)} is VALID [2022-04-27 13:15:20,626 INFO L290 TraceCheckUtils]: 19: Hoare triple {233633#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233633#(<= ~counter~0 1)} is VALID [2022-04-27 13:15:20,627 INFO L290 TraceCheckUtils]: 20: Hoare triple {233633#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233643#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:20,627 INFO L290 TraceCheckUtils]: 21: Hoare triple {233643#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {233643#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:20,627 INFO L290 TraceCheckUtils]: 22: Hoare triple {233643#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {233643#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:20,628 INFO L290 TraceCheckUtils]: 23: Hoare triple {233643#(<= ~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; {233643#(<= ~counter~0 2)} is VALID [2022-04-27 13:15:20,628 INFO L290 TraceCheckUtils]: 24: Hoare triple {233643#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233656#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:20,629 INFO L290 TraceCheckUtils]: 25: Hoare triple {233656#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {233656#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:20,629 INFO L290 TraceCheckUtils]: 26: Hoare triple {233656#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233656#(<= ~counter~0 3)} is VALID [2022-04-27 13:15:20,630 INFO L290 TraceCheckUtils]: 27: Hoare triple {233656#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233666#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:20,630 INFO L290 TraceCheckUtils]: 28: Hoare triple {233666#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {233666#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:20,631 INFO L290 TraceCheckUtils]: 29: Hoare triple {233666#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233666#(<= ~counter~0 4)} is VALID [2022-04-27 13:15:20,632 INFO L290 TraceCheckUtils]: 30: Hoare triple {233666#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,632 INFO L290 TraceCheckUtils]: 31: Hoare triple {233676#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,633 INFO L272 TraceCheckUtils]: 32: Hoare triple {233676#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,633 INFO L290 TraceCheckUtils]: 33: Hoare triple {233676#(<= ~counter~0 5)} ~cond := #in~cond; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,633 INFO L290 TraceCheckUtils]: 34: Hoare triple {233676#(<= ~counter~0 5)} assume !(0 == ~cond); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,633 INFO L290 TraceCheckUtils]: 35: Hoare triple {233676#(<= ~counter~0 5)} assume true; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,634 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {233676#(<= ~counter~0 5)} {233676#(<= ~counter~0 5)} #98#return; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,635 INFO L272 TraceCheckUtils]: 37: Hoare triple {233676#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,635 INFO L290 TraceCheckUtils]: 38: Hoare triple {233676#(<= ~counter~0 5)} ~cond := #in~cond; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,635 INFO L290 TraceCheckUtils]: 39: Hoare triple {233676#(<= ~counter~0 5)} assume !(0 == ~cond); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,636 INFO L290 TraceCheckUtils]: 40: Hoare triple {233676#(<= ~counter~0 5)} assume true; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,636 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {233676#(<= ~counter~0 5)} {233676#(<= ~counter~0 5)} #100#return; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,637 INFO L272 TraceCheckUtils]: 42: Hoare triple {233676#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,637 INFO L290 TraceCheckUtils]: 43: Hoare triple {233676#(<= ~counter~0 5)} ~cond := #in~cond; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,638 INFO L290 TraceCheckUtils]: 44: Hoare triple {233676#(<= ~counter~0 5)} assume !(0 == ~cond); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,638 INFO L290 TraceCheckUtils]: 45: Hoare triple {233676#(<= ~counter~0 5)} assume true; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,639 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {233676#(<= ~counter~0 5)} {233676#(<= ~counter~0 5)} #102#return; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,639 INFO L272 TraceCheckUtils]: 47: Hoare triple {233676#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,639 INFO L290 TraceCheckUtils]: 48: Hoare triple {233676#(<= ~counter~0 5)} ~cond := #in~cond; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,640 INFO L290 TraceCheckUtils]: 49: Hoare triple {233676#(<= ~counter~0 5)} assume !(0 == ~cond); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,640 INFO L290 TraceCheckUtils]: 50: Hoare triple {233676#(<= ~counter~0 5)} assume true; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,641 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {233676#(<= ~counter~0 5)} {233676#(<= ~counter~0 5)} #104#return; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,641 INFO L290 TraceCheckUtils]: 52: Hoare triple {233676#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,641 INFO L290 TraceCheckUtils]: 53: Hoare triple {233676#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233676#(<= ~counter~0 5)} is VALID [2022-04-27 13:15:20,643 INFO L290 TraceCheckUtils]: 54: Hoare triple {233676#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233749#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:20,643 INFO L290 TraceCheckUtils]: 55: Hoare triple {233749#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {233749#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:20,644 INFO L290 TraceCheckUtils]: 56: Hoare triple {233749#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {233749#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:20,644 INFO L290 TraceCheckUtils]: 57: Hoare triple {233749#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {233749#(<= ~counter~0 6)} is VALID [2022-04-27 13:15:20,645 INFO L290 TraceCheckUtils]: 58: Hoare triple {233749#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233762#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:20,645 INFO L290 TraceCheckUtils]: 59: Hoare triple {233762#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {233762#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:20,645 INFO L290 TraceCheckUtils]: 60: Hoare triple {233762#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233762#(<= ~counter~0 7)} is VALID [2022-04-27 13:15:20,646 INFO L290 TraceCheckUtils]: 61: Hoare triple {233762#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233772#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:20,647 INFO L290 TraceCheckUtils]: 62: Hoare triple {233772#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {233772#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:20,647 INFO L290 TraceCheckUtils]: 63: Hoare triple {233772#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233772#(<= ~counter~0 8)} is VALID [2022-04-27 13:15:20,648 INFO L290 TraceCheckUtils]: 64: Hoare triple {233772#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,648 INFO L290 TraceCheckUtils]: 65: Hoare triple {233782#(<= ~counter~0 9)} assume !!(#t~post8 < 100);havoc #t~post8; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,649 INFO L272 TraceCheckUtils]: 66: Hoare triple {233782#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,649 INFO L290 TraceCheckUtils]: 67: Hoare triple {233782#(<= ~counter~0 9)} ~cond := #in~cond; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,650 INFO L290 TraceCheckUtils]: 68: Hoare triple {233782#(<= ~counter~0 9)} assume !(0 == ~cond); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,650 INFO L290 TraceCheckUtils]: 69: Hoare triple {233782#(<= ~counter~0 9)} assume true; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,651 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {233782#(<= ~counter~0 9)} {233782#(<= ~counter~0 9)} #98#return; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,651 INFO L272 TraceCheckUtils]: 71: Hoare triple {233782#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,651 INFO L290 TraceCheckUtils]: 72: Hoare triple {233782#(<= ~counter~0 9)} ~cond := #in~cond; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,652 INFO L290 TraceCheckUtils]: 73: Hoare triple {233782#(<= ~counter~0 9)} assume !(0 == ~cond); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,652 INFO L290 TraceCheckUtils]: 74: Hoare triple {233782#(<= ~counter~0 9)} assume true; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,653 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {233782#(<= ~counter~0 9)} {233782#(<= ~counter~0 9)} #100#return; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,653 INFO L272 TraceCheckUtils]: 76: Hoare triple {233782#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,654 INFO L290 TraceCheckUtils]: 77: Hoare triple {233782#(<= ~counter~0 9)} ~cond := #in~cond; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,654 INFO L290 TraceCheckUtils]: 78: Hoare triple {233782#(<= ~counter~0 9)} assume !(0 == ~cond); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,654 INFO L290 TraceCheckUtils]: 79: Hoare triple {233782#(<= ~counter~0 9)} assume true; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,655 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {233782#(<= ~counter~0 9)} {233782#(<= ~counter~0 9)} #102#return; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,655 INFO L272 TraceCheckUtils]: 81: Hoare triple {233782#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,656 INFO L290 TraceCheckUtils]: 82: Hoare triple {233782#(<= ~counter~0 9)} ~cond := #in~cond; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,656 INFO L290 TraceCheckUtils]: 83: Hoare triple {233782#(<= ~counter~0 9)} assume !(0 == ~cond); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,657 INFO L290 TraceCheckUtils]: 84: Hoare triple {233782#(<= ~counter~0 9)} assume true; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,657 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {233782#(<= ~counter~0 9)} {233782#(<= ~counter~0 9)} #104#return; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,658 INFO L290 TraceCheckUtils]: 86: Hoare triple {233782#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,658 INFO L290 TraceCheckUtils]: 87: Hoare triple {233782#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233782#(<= ~counter~0 9)} is VALID [2022-04-27 13:15:20,659 INFO L290 TraceCheckUtils]: 88: Hoare triple {233782#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233855#(<= ~counter~0 10)} is VALID [2022-04-27 13:15:20,659 INFO L290 TraceCheckUtils]: 89: Hoare triple {233855#(<= ~counter~0 10)} assume !!(#t~post7 < 100);havoc #t~post7; {233855#(<= ~counter~0 10)} is VALID [2022-04-27 13:15:20,660 INFO L290 TraceCheckUtils]: 90: Hoare triple {233855#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {233855#(<= ~counter~0 10)} is VALID [2022-04-27 13:15:20,660 INFO L290 TraceCheckUtils]: 91: Hoare triple {233855#(<= ~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; {233855#(<= ~counter~0 10)} is VALID [2022-04-27 13:15:20,661 INFO L290 TraceCheckUtils]: 92: Hoare triple {233855#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233868#(<= ~counter~0 11)} is VALID [2022-04-27 13:15:20,661 INFO L290 TraceCheckUtils]: 93: Hoare triple {233868#(<= ~counter~0 11)} assume !!(#t~post6 < 100);havoc #t~post6; {233868#(<= ~counter~0 11)} is VALID [2022-04-27 13:15:20,662 INFO L290 TraceCheckUtils]: 94: Hoare triple {233868#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {233868#(<= ~counter~0 11)} is VALID [2022-04-27 13:15:20,663 INFO L290 TraceCheckUtils]: 95: Hoare triple {233868#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233878#(<= ~counter~0 12)} is VALID [2022-04-27 13:15:20,663 INFO L290 TraceCheckUtils]: 96: Hoare triple {233878#(<= ~counter~0 12)} assume !!(#t~post7 < 100);havoc #t~post7; {233878#(<= ~counter~0 12)} is VALID [2022-04-27 13:15:20,663 INFO L290 TraceCheckUtils]: 97: Hoare triple {233878#(<= ~counter~0 12)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {233878#(<= ~counter~0 12)} is VALID [2022-04-27 13:15:20,664 INFO L290 TraceCheckUtils]: 98: Hoare triple {233878#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,665 INFO L290 TraceCheckUtils]: 99: Hoare triple {233888#(<= ~counter~0 13)} assume !!(#t~post8 < 100);havoc #t~post8; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,665 INFO L272 TraceCheckUtils]: 100: Hoare triple {233888#(<= ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,666 INFO L290 TraceCheckUtils]: 101: Hoare triple {233888#(<= ~counter~0 13)} ~cond := #in~cond; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,666 INFO L290 TraceCheckUtils]: 102: Hoare triple {233888#(<= ~counter~0 13)} assume !(0 == ~cond); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,666 INFO L290 TraceCheckUtils]: 103: Hoare triple {233888#(<= ~counter~0 13)} assume true; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,667 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {233888#(<= ~counter~0 13)} {233888#(<= ~counter~0 13)} #98#return; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,667 INFO L272 TraceCheckUtils]: 105: Hoare triple {233888#(<= ~counter~0 13)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,668 INFO L290 TraceCheckUtils]: 106: Hoare triple {233888#(<= ~counter~0 13)} ~cond := #in~cond; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,668 INFO L290 TraceCheckUtils]: 107: Hoare triple {233888#(<= ~counter~0 13)} assume !(0 == ~cond); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,668 INFO L290 TraceCheckUtils]: 108: Hoare triple {233888#(<= ~counter~0 13)} assume true; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,669 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {233888#(<= ~counter~0 13)} {233888#(<= ~counter~0 13)} #100#return; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,670 INFO L272 TraceCheckUtils]: 110: Hoare triple {233888#(<= ~counter~0 13)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,670 INFO L290 TraceCheckUtils]: 111: Hoare triple {233888#(<= ~counter~0 13)} ~cond := #in~cond; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,671 INFO L290 TraceCheckUtils]: 112: Hoare triple {233888#(<= ~counter~0 13)} assume !(0 == ~cond); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,671 INFO L290 TraceCheckUtils]: 113: Hoare triple {233888#(<= ~counter~0 13)} assume true; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,672 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {233888#(<= ~counter~0 13)} {233888#(<= ~counter~0 13)} #102#return; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,672 INFO L272 TraceCheckUtils]: 115: Hoare triple {233888#(<= ~counter~0 13)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,673 INFO L290 TraceCheckUtils]: 116: Hoare triple {233888#(<= ~counter~0 13)} ~cond := #in~cond; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,673 INFO L290 TraceCheckUtils]: 117: Hoare triple {233888#(<= ~counter~0 13)} assume !(0 == ~cond); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,674 INFO L290 TraceCheckUtils]: 118: Hoare triple {233888#(<= ~counter~0 13)} assume true; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,674 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {233888#(<= ~counter~0 13)} {233888#(<= ~counter~0 13)} #104#return; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,675 INFO L290 TraceCheckUtils]: 120: Hoare triple {233888#(<= ~counter~0 13)} assume !(~c~0 >= 2 * ~v~0); {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,675 INFO L290 TraceCheckUtils]: 121: Hoare triple {233888#(<= ~counter~0 13)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {233888#(<= ~counter~0 13)} is VALID [2022-04-27 13:15:20,677 INFO L290 TraceCheckUtils]: 122: Hoare triple {233888#(<= ~counter~0 13)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {233961#(<= ~counter~0 14)} is VALID [2022-04-27 13:15:20,677 INFO L290 TraceCheckUtils]: 123: Hoare triple {233961#(<= ~counter~0 14)} assume !!(#t~post7 < 100);havoc #t~post7; {233961#(<= ~counter~0 14)} is VALID [2022-04-27 13:15:20,677 INFO L290 TraceCheckUtils]: 124: Hoare triple {233961#(<= ~counter~0 14)} assume !(~c~0 >= ~b~0); {233961#(<= ~counter~0 14)} is VALID [2022-04-27 13:15:20,678 INFO L290 TraceCheckUtils]: 125: Hoare triple {233961#(<= ~counter~0 14)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {233961#(<= ~counter~0 14)} is VALID [2022-04-27 13:15:20,678 INFO L290 TraceCheckUtils]: 126: Hoare triple {233961#(<= ~counter~0 14)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {233974#(<= |main_#t~post6| 14)} is VALID [2022-04-27 13:15:20,678 INFO L290 TraceCheckUtils]: 127: Hoare triple {233974#(<= |main_#t~post6| 14)} assume !(#t~post6 < 100);havoc #t~post6; {233577#false} is VALID [2022-04-27 13:15:20,678 INFO L272 TraceCheckUtils]: 128: Hoare triple {233577#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {233577#false} is VALID [2022-04-27 13:15:20,678 INFO L290 TraceCheckUtils]: 129: Hoare triple {233577#false} ~cond := #in~cond; {233577#false} is VALID [2022-04-27 13:15:20,679 INFO L290 TraceCheckUtils]: 130: Hoare triple {233577#false} assume 0 == ~cond; {233577#false} is VALID [2022-04-27 13:15:20,679 INFO L290 TraceCheckUtils]: 131: Hoare triple {233577#false} assume !false; {233577#false} is VALID [2022-04-27 13:15:20,679 INFO L134 CoverageAnalysis]: Checked inductivity of 411 backedges. 24 proven. 311 refuted. 0 times theorem prover too weak. 76 trivial. 0 not checked. [2022-04-27 13:15:20,679 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 13:15:21,493 INFO L290 TraceCheckUtils]: 131: Hoare triple {233577#false} assume !false; {233577#false} is VALID [2022-04-27 13:15:21,494 INFO L290 TraceCheckUtils]: 130: Hoare triple {233577#false} assume 0 == ~cond; {233577#false} is VALID [2022-04-27 13:15:21,494 INFO L290 TraceCheckUtils]: 129: Hoare triple {233577#false} ~cond := #in~cond; {233577#false} is VALID [2022-04-27 13:15:21,494 INFO L272 TraceCheckUtils]: 128: Hoare triple {233577#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {233577#false} is VALID [2022-04-27 13:15:21,494 INFO L290 TraceCheckUtils]: 127: Hoare triple {234002#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {233577#false} is VALID [2022-04-27 13:15:21,494 INFO L290 TraceCheckUtils]: 126: Hoare triple {234006#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234002#(< |main_#t~post6| 100)} is VALID [2022-04-27 13:15:21,494 INFO L290 TraceCheckUtils]: 125: Hoare triple {234006#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {234006#(< ~counter~0 100)} is VALID [2022-04-27 13:15:21,495 INFO L290 TraceCheckUtils]: 124: Hoare triple {234006#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {234006#(< ~counter~0 100)} is VALID [2022-04-27 13:15:21,495 INFO L290 TraceCheckUtils]: 123: Hoare triple {234006#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {234006#(< ~counter~0 100)} is VALID [2022-04-27 13:15:21,497 INFO L290 TraceCheckUtils]: 122: Hoare triple {234019#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234006#(< ~counter~0 100)} is VALID [2022-04-27 13:15:21,497 INFO L290 TraceCheckUtils]: 121: Hoare triple {234019#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,497 INFO L290 TraceCheckUtils]: 120: Hoare triple {234019#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,498 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {233576#true} {234019#(< ~counter~0 99)} #104#return; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,498 INFO L290 TraceCheckUtils]: 118: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,498 INFO L290 TraceCheckUtils]: 117: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,498 INFO L290 TraceCheckUtils]: 116: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,498 INFO L272 TraceCheckUtils]: 115: Hoare triple {234019#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,498 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {233576#true} {234019#(< ~counter~0 99)} #102#return; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,499 INFO L290 TraceCheckUtils]: 113: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L290 TraceCheckUtils]: 112: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L290 TraceCheckUtils]: 111: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L272 TraceCheckUtils]: 110: Hoare triple {234019#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {233576#true} {234019#(< ~counter~0 99)} #100#return; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,499 INFO L290 TraceCheckUtils]: 108: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L290 TraceCheckUtils]: 107: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L290 TraceCheckUtils]: 106: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,499 INFO L272 TraceCheckUtils]: 105: Hoare triple {234019#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,500 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {233576#true} {234019#(< ~counter~0 99)} #98#return; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,500 INFO L290 TraceCheckUtils]: 103: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,500 INFO L290 TraceCheckUtils]: 102: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,500 INFO L290 TraceCheckUtils]: 101: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,500 INFO L272 TraceCheckUtils]: 100: Hoare triple {234019#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,500 INFO L290 TraceCheckUtils]: 99: Hoare triple {234019#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,502 INFO L290 TraceCheckUtils]: 98: Hoare triple {234092#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {234019#(< ~counter~0 99)} is VALID [2022-04-27 13:15:21,502 INFO L290 TraceCheckUtils]: 97: Hoare triple {234092#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {234092#(< ~counter~0 98)} is VALID [2022-04-27 13:15:21,502 INFO L290 TraceCheckUtils]: 96: Hoare triple {234092#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {234092#(< ~counter~0 98)} is VALID [2022-04-27 13:15:21,503 INFO L290 TraceCheckUtils]: 95: Hoare triple {234102#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234092#(< ~counter~0 98)} is VALID [2022-04-27 13:15:21,503 INFO L290 TraceCheckUtils]: 94: Hoare triple {234102#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {234102#(< ~counter~0 97)} is VALID [2022-04-27 13:15:21,503 INFO L290 TraceCheckUtils]: 93: Hoare triple {234102#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {234102#(< ~counter~0 97)} is VALID [2022-04-27 13:15:21,504 INFO L290 TraceCheckUtils]: 92: Hoare triple {234112#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234102#(< ~counter~0 97)} is VALID [2022-04-27 13:15:21,504 INFO L290 TraceCheckUtils]: 91: Hoare triple {234112#(< ~counter~0 96)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {234112#(< ~counter~0 96)} is VALID [2022-04-27 13:15:21,505 INFO L290 TraceCheckUtils]: 90: Hoare triple {234112#(< ~counter~0 96)} assume !(~c~0 >= ~b~0); {234112#(< ~counter~0 96)} is VALID [2022-04-27 13:15:21,505 INFO L290 TraceCheckUtils]: 89: Hoare triple {234112#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {234112#(< ~counter~0 96)} is VALID [2022-04-27 13:15:21,506 INFO L290 TraceCheckUtils]: 88: Hoare triple {234125#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234112#(< ~counter~0 96)} is VALID [2022-04-27 13:15:21,506 INFO L290 TraceCheckUtils]: 87: Hoare triple {234125#(< ~counter~0 95)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,506 INFO L290 TraceCheckUtils]: 86: Hoare triple {234125#(< ~counter~0 95)} assume !(~c~0 >= 2 * ~v~0); {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,507 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {233576#true} {234125#(< ~counter~0 95)} #104#return; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,507 INFO L290 TraceCheckUtils]: 84: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,507 INFO L290 TraceCheckUtils]: 83: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,507 INFO L290 TraceCheckUtils]: 82: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,507 INFO L272 TraceCheckUtils]: 81: Hoare triple {234125#(< ~counter~0 95)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,507 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {233576#true} {234125#(< ~counter~0 95)} #102#return; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,508 INFO L290 TraceCheckUtils]: 79: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L290 TraceCheckUtils]: 78: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L290 TraceCheckUtils]: 77: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L272 TraceCheckUtils]: 76: Hoare triple {234125#(< ~counter~0 95)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {233576#true} {234125#(< ~counter~0 95)} #100#return; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,508 INFO L290 TraceCheckUtils]: 74: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L290 TraceCheckUtils]: 73: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L290 TraceCheckUtils]: 72: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,508 INFO L272 TraceCheckUtils]: 71: Hoare triple {234125#(< ~counter~0 95)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,509 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {233576#true} {234125#(< ~counter~0 95)} #98#return; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,509 INFO L290 TraceCheckUtils]: 69: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,509 INFO L290 TraceCheckUtils]: 68: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,509 INFO L290 TraceCheckUtils]: 67: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,509 INFO L272 TraceCheckUtils]: 66: Hoare triple {234125#(< ~counter~0 95)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,509 INFO L290 TraceCheckUtils]: 65: Hoare triple {234125#(< ~counter~0 95)} assume !!(#t~post8 < 100);havoc #t~post8; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,511 INFO L290 TraceCheckUtils]: 64: Hoare triple {234198#(< ~counter~0 94)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {234125#(< ~counter~0 95)} is VALID [2022-04-27 13:15:21,511 INFO L290 TraceCheckUtils]: 63: Hoare triple {234198#(< ~counter~0 94)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {234198#(< ~counter~0 94)} is VALID [2022-04-27 13:15:21,511 INFO L290 TraceCheckUtils]: 62: Hoare triple {234198#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {234198#(< ~counter~0 94)} is VALID [2022-04-27 13:15:21,512 INFO L290 TraceCheckUtils]: 61: Hoare triple {234208#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234198#(< ~counter~0 94)} is VALID [2022-04-27 13:15:21,512 INFO L290 TraceCheckUtils]: 60: Hoare triple {234208#(< ~counter~0 93)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {234208#(< ~counter~0 93)} is VALID [2022-04-27 13:15:21,512 INFO L290 TraceCheckUtils]: 59: Hoare triple {234208#(< ~counter~0 93)} assume !!(#t~post6 < 100);havoc #t~post6; {234208#(< ~counter~0 93)} is VALID [2022-04-27 13:15:21,513 INFO L290 TraceCheckUtils]: 58: Hoare triple {234218#(< ~counter~0 92)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234208#(< ~counter~0 93)} is VALID [2022-04-27 13:15:21,513 INFO L290 TraceCheckUtils]: 57: Hoare triple {234218#(< ~counter~0 92)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {234218#(< ~counter~0 92)} is VALID [2022-04-27 13:15:21,514 INFO L290 TraceCheckUtils]: 56: Hoare triple {234218#(< ~counter~0 92)} assume !(~c~0 >= ~b~0); {234218#(< ~counter~0 92)} is VALID [2022-04-27 13:15:21,514 INFO L290 TraceCheckUtils]: 55: Hoare triple {234218#(< ~counter~0 92)} assume !!(#t~post7 < 100);havoc #t~post7; {234218#(< ~counter~0 92)} is VALID [2022-04-27 13:15:21,515 INFO L290 TraceCheckUtils]: 54: Hoare triple {234231#(< ~counter~0 91)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234218#(< ~counter~0 92)} is VALID [2022-04-27 13:15:21,515 INFO L290 TraceCheckUtils]: 53: Hoare triple {234231#(< ~counter~0 91)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,515 INFO L290 TraceCheckUtils]: 52: Hoare triple {234231#(< ~counter~0 91)} assume !(~c~0 >= 2 * ~v~0); {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,516 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {233576#true} {234231#(< ~counter~0 91)} #104#return; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,516 INFO L290 TraceCheckUtils]: 50: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,516 INFO L290 TraceCheckUtils]: 49: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,516 INFO L290 TraceCheckUtils]: 48: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,516 INFO L272 TraceCheckUtils]: 47: Hoare triple {234231#(< ~counter~0 91)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,516 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {233576#true} {234231#(< ~counter~0 91)} #102#return; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,516 INFO L290 TraceCheckUtils]: 45: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L290 TraceCheckUtils]: 44: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L290 TraceCheckUtils]: 43: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L272 TraceCheckUtils]: 42: Hoare triple {234231#(< ~counter~0 91)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {233576#true} {234231#(< ~counter~0 91)} #100#return; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,517 INFO L290 TraceCheckUtils]: 40: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L290 TraceCheckUtils]: 39: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L290 TraceCheckUtils]: 38: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,517 INFO L272 TraceCheckUtils]: 37: Hoare triple {234231#(< ~counter~0 91)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,518 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {233576#true} {234231#(< ~counter~0 91)} #98#return; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,518 INFO L290 TraceCheckUtils]: 35: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,518 INFO L290 TraceCheckUtils]: 34: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,518 INFO L290 TraceCheckUtils]: 33: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,518 INFO L272 TraceCheckUtils]: 32: Hoare triple {234231#(< ~counter~0 91)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,523 INFO L290 TraceCheckUtils]: 31: Hoare triple {234231#(< ~counter~0 91)} assume !!(#t~post8 < 100);havoc #t~post8; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {234304#(< ~counter~0 90)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {234231#(< ~counter~0 91)} is VALID [2022-04-27 13:15:21,525 INFO L290 TraceCheckUtils]: 29: Hoare triple {234304#(< ~counter~0 90)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {234304#(< ~counter~0 90)} is VALID [2022-04-27 13:15:21,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {234304#(< ~counter~0 90)} assume !!(#t~post7 < 100);havoc #t~post7; {234304#(< ~counter~0 90)} is VALID [2022-04-27 13:15:21,526 INFO L290 TraceCheckUtils]: 27: Hoare triple {234314#(< ~counter~0 89)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234304#(< ~counter~0 90)} is VALID [2022-04-27 13:15:21,526 INFO L290 TraceCheckUtils]: 26: Hoare triple {234314#(< ~counter~0 89)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {234314#(< ~counter~0 89)} is VALID [2022-04-27 13:15:21,527 INFO L290 TraceCheckUtils]: 25: Hoare triple {234314#(< ~counter~0 89)} assume !!(#t~post6 < 100);havoc #t~post6; {234314#(< ~counter~0 89)} is VALID [2022-04-27 13:15:21,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {234324#(< ~counter~0 88)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234314#(< ~counter~0 89)} is VALID [2022-04-27 13:15:21,528 INFO L290 TraceCheckUtils]: 23: Hoare triple {234324#(< ~counter~0 88)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {234324#(< ~counter~0 88)} is VALID [2022-04-27 13:15:21,528 INFO L290 TraceCheckUtils]: 22: Hoare triple {234324#(< ~counter~0 88)} assume !(~c~0 >= ~b~0); {234324#(< ~counter~0 88)} is VALID [2022-04-27 13:15:21,529 INFO L290 TraceCheckUtils]: 21: Hoare triple {234324#(< ~counter~0 88)} assume !!(#t~post7 < 100);havoc #t~post7; {234324#(< ~counter~0 88)} is VALID [2022-04-27 13:15:21,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {234337#(< ~counter~0 87)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {234324#(< ~counter~0 88)} is VALID [2022-04-27 13:15:21,530 INFO L290 TraceCheckUtils]: 19: Hoare triple {234337#(< ~counter~0 87)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {234337#(< ~counter~0 87)} is VALID [2022-04-27 13:15:21,530 INFO L290 TraceCheckUtils]: 18: Hoare triple {234337#(< ~counter~0 87)} assume !!(#t~post6 < 100);havoc #t~post6; {234337#(< ~counter~0 87)} is VALID [2022-04-27 13:15:21,531 INFO L290 TraceCheckUtils]: 17: Hoare triple {234347#(< ~counter~0 86)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {234337#(< ~counter~0 87)} is VALID [2022-04-27 13:15:21,531 INFO L290 TraceCheckUtils]: 16: Hoare triple {234347#(< ~counter~0 86)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,532 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {233576#true} {234347#(< ~counter~0 86)} #96#return; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,532 INFO L290 TraceCheckUtils]: 14: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,532 INFO L290 TraceCheckUtils]: 13: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,532 INFO L290 TraceCheckUtils]: 12: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,532 INFO L272 TraceCheckUtils]: 11: Hoare triple {234347#(< ~counter~0 86)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,533 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {233576#true} {234347#(< ~counter~0 86)} #94#return; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,533 INFO L290 TraceCheckUtils]: 9: Hoare triple {233576#true} assume true; {233576#true} is VALID [2022-04-27 13:15:21,533 INFO L290 TraceCheckUtils]: 8: Hoare triple {233576#true} assume !(0 == ~cond); {233576#true} is VALID [2022-04-27 13:15:21,533 INFO L290 TraceCheckUtils]: 7: Hoare triple {233576#true} ~cond := #in~cond; {233576#true} is VALID [2022-04-27 13:15:21,533 INFO L272 TraceCheckUtils]: 6: Hoare triple {234347#(< ~counter~0 86)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {233576#true} is VALID [2022-04-27 13:15:21,533 INFO L290 TraceCheckUtils]: 5: Hoare triple {234347#(< ~counter~0 86)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,534 INFO L272 TraceCheckUtils]: 4: Hoare triple {234347#(< ~counter~0 86)} call #t~ret9 := main(); {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {234347#(< ~counter~0 86)} {233576#true} #108#return; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {234347#(< ~counter~0 86)} assume true; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,535 INFO L290 TraceCheckUtils]: 1: Hoare triple {233576#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; {234347#(< ~counter~0 86)} is VALID [2022-04-27 13:15:21,535 INFO L272 TraceCheckUtils]: 0: Hoare triple {233576#true} call ULTIMATE.init(); {233576#true} is VALID [2022-04-27 13:15:21,535 INFO L134 CoverageAnalysis]: Checked inductivity of 411 backedges. 24 proven. 119 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-27 13:15:21,536 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 13:15:21,536 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1164013191] [2022-04-27 13:15:21,536 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 13:15:21,536 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [37740066] [2022-04-27 13:15:21,536 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [37740066] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 13:15:21,536 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 13:15:21,536 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18] total 34 [2022-04-27 13:15:21,536 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [946234858] [2022-04-27 13:15:21,536 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 13:15:21,537 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) Word has length 132 [2022-04-27 13:15:21,538 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 13:15:21,538 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30) [2022-04-27 13:15:21,720 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 193 edges. 193 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 13:15:21,720 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 34 states [2022-04-27 13:15:21,720 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 13:15:21,721 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2022-04-27 13:15:21,721 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=501, Invalid=621, Unknown=0, NotChecked=0, Total=1122 [2022-04-27 13:15:21,721 INFO L87 Difference]: Start difference. First operand 6955 states and 9656 transitions. Second operand has 34 states, 34 states have (on average 3.8529411764705883) internal successors, (131), 34 states have internal predecessors, (131), 10 states have call successors, (32), 7 states have call predecessors, (32), 6 states have return successors, (30), 8 states have call predecessors, (30), 9 states have call successors, (30)