/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 12:29:39,077 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 12:29:39,085 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 12:29:39,123 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 12:29:39,124 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 12:29:39,125 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 12:29:39,127 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 12:29:39,128 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 12:29:39,130 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 12:29:39,133 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 12:29:39,133 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 12:29:39,134 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 12:29:39,134 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 12:29:39,136 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 12:29:39,137 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 12:29:39,139 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 12:29:39,139 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 12:29:39,139 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 12:29:39,141 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 12:29:39,145 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 12:29:39,146 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 12:29:39,147 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 12:29:39,147 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 12:29:39,148 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 12:29:39,149 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 12:29:39,154 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 12:29:39,154 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 12:29:39,154 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 12:29:39,154 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 12:29:39,155 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 12:29:39,155 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 12:29:39,155 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 12:29:39,157 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 12:29:39,157 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 12:29:39,157 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 12:29:39,158 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 12:29:39,158 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 12:29:39,158 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 12:29:39,159 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 12:29:39,159 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 12:29:39,159 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 12:29:39,160 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 12:29:39,161 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-28 12:29:39,168 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 12:29:39,169 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 12:29:39,169 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 12:29:39,169 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 12:29:39,170 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 12:29:39,170 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 12:29:39,170 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 12:29:39,170 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 12:29:39,170 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 12:29:39,170 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 12:29:39,171 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 12:29:39,171 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 12:29:39,171 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 12:29:39,172 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-28 12:29:39,172 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 12:29:39,329 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 12:29:39,341 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 12:29:39,343 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 12:29:39,343 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 12:29:39,344 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 12:29:39,344 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c [2022-04-28 12:29:39,380 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/821ef6847/d42d0e227258415896169e348316d52a/FLAG6c26ad1b9 [2022-04-28 12:29:39,795 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 12:29:39,796 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound50.c [2022-04-28 12:29:39,800 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/821ef6847/d42d0e227258415896169e348316d52a/FLAG6c26ad1b9 [2022-04-28 12:29:39,808 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/821ef6847/d42d0e227258415896169e348316d52a [2022-04-28 12:29:39,810 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 12:29:39,811 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 12:29:39,812 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 12:29:39,812 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 12:29:39,814 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 12:29:39,815 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:39,815 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@236ef16e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39, skipping insertion in model container [2022-04-28 12:29:39,815 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:39,820 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 12:29:39,828 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 12:29:39,943 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_unwindbound50.c[490,503] [2022-04-28 12:29:39,958 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 12:29:39,963 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 12:29:39,971 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_unwindbound50.c[490,503] [2022-04-28 12:29:39,978 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 12:29:39,986 INFO L208 MainTranslator]: Completed translation [2022-04-28 12:29:39,986 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39 WrapperNode [2022-04-28 12:29:39,987 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 12:29:39,987 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 12:29:39,987 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 12:29:39,987 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 12:29:39,993 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:39,994 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:39,997 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:39,997 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:40,002 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:40,005 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:40,006 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:40,007 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 12:29:40,007 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 12:29:40,008 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 12:29:40,008 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 12:29:40,008 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (1/1) ... [2022-04-28 12:29:40,021 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 12:29:40,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:40,044 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 12:29:40,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 12:29:40,080 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 12:29:40,080 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 12:29:40,080 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 12:29:40,081 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 12:29:40,081 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 12:29:40,081 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 12:29:40,081 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 12:29:40,081 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 12:29:40,081 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 12:29:40,081 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 12:29:40,081 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 12:29:40,081 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 12:29:40,082 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 12:29:40,083 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 12:29:40,144 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 12:29:40,145 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 12:29:40,288 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 12:29:40,292 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 12:29:40,293 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 12:29:40,294 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:29:40 BoogieIcfgContainer [2022-04-28 12:29:40,294 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 12:29:40,295 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 12:29:40,295 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 12:29:40,310 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 12:29:40,310 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 12:29:39" (1/3) ... [2022-04-28 12:29:40,310 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@76235b73 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 12:29:40, skipping insertion in model container [2022-04-28 12:29:40,310 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:29:39" (2/3) ... [2022-04-28 12:29:40,311 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@76235b73 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 12:29:40, skipping insertion in model container [2022-04-28 12:29:40,311 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:29:40" (3/3) ... [2022-04-28 12:29:40,311 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound50.c [2022-04-28 12:29:40,320 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 12:29:40,320 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 12:29:40,345 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 12:29:40,349 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6f46c1ef, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@4d7a5782 [2022-04-28 12:29:40,349 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 12:29:40,379 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-28 12:29:40,383 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 12:29:40,383 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:40,384 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:29:40,384 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:40,387 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:40,387 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-28 12:29:40,393 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:40,394 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1314379286] [2022-04-28 12:29:40,400 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:40,400 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 2 times [2022-04-28 12:29:40,405 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:40,405 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1188041751] [2022-04-28 12:29:40,405 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:40,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:40,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:40,504 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 12:29:40,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:40,517 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-28 12:29:40,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 12:29:40,518 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 12:29:40,518 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 12:29:40,520 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:40,524 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 12:29:40,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 12:29:40,524 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 12:29:40,524 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 12:29:40,525 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 12:29:40,526 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:40,530 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 12:29:40,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 12:29:40,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 12:29:40,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 12:29:40,532 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-28 12:29:40,532 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-28 12:29:40,532 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 12:29:40,532 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 12:29:40,532 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-28 12:29:40,532 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-28 12:29:40,533 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-28 12:29:40,533 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 12:29:40,533 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 12:29:40,533 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 12:29:40,534 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 12:29:40,534 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-28 12:29:40,534 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 12:29:40,534 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 12:29:40,534 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 12:29:40,535 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 12:29:40,535 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-28 12:29:40,535 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-28 12:29:40,535 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-28 12:29:40,535 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 12:29:40,535 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 12:29:40,536 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 12:29:40,536 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:40,536 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:40,536 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1188041751] [2022-04-28 12:29:40,537 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1188041751] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:40,537 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:40,537 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 12:29:40,539 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:40,539 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1314379286] [2022-04-28 12:29:40,539 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1314379286] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:40,539 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:40,539 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 12:29:40,539 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1827687363] [2022-04-28 12:29:40,540 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:40,543 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 12:29:40,544 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:40,546 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:40,564 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:40,564 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 12:29:40,564 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:40,578 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 12:29:40,578 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 12:29:40,580 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-28 12:29:40,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:40,703 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-28 12:29:40,703 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 12:29:40,704 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 12:29:40,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:40,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:40,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 12:29:40,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:40,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 12:29:40,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-28 12:29:40,822 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-28 12:29:40,828 INFO L225 Difference]: With dead ends: 74 [2022-04-28 12:29:40,828 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 12:29:40,830 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 12:29:40,832 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.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:40,833 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.0s Time] [2022-04-28 12:29:40,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 12:29:40,852 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-28 12:29:40,852 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:40,853 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-28 12:29:40,853 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-28 12:29:40,854 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-28 12:29:40,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:40,857 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 12:29:40,857 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 12:29:40,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:40,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:40,858 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-28 12:29:40,859 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-28 12:29:40,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:40,861 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 12:29:40,861 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 12:29:40,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:40,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:40,862 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:40,862 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:40,863 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-28 12:29:40,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-28 12:29:40,866 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-28 12:29:40,866 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:40,866 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-28 12:29:40,866 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:40,866 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 45 transitions. [2022-04-28 12:29:40,903 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:40,904 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-28 12:29:40,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 12:29:40,905 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:40,905 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:29:40,905 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 12:29:40,905 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:40,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:40,906 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-28 12:29:40,906 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:40,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [776383434] [2022-04-28 12:29:40,907 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:40,907 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 2 times [2022-04-28 12:29:40,907 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:40,907 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [299509762] [2022-04-28 12:29:40,907 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:40,907 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:40,923 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:40,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1049880380] [2022-04-28 12:29:40,924 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:40,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:40,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:40,925 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:40,943 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 12:29:40,981 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 12:29:40,981 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:40,982 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 12:29:40,991 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:40,993 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:41,156 INFO L272 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2022-04-28 12:29:41,159 INFO L290 TraceCheckUtils]: 1: Hoare triple {349#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; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,159 INFO L290 TraceCheckUtils]: 2: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {357#(<= ~counter~0 0)} {349#true} #108#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,160 INFO L272 TraceCheckUtils]: 4: Hoare triple {357#(<= ~counter~0 0)} call #t~ret9 := main(); {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,162 INFO L290 TraceCheckUtils]: 5: Hoare triple {357#(<= ~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; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,162 INFO L272 TraceCheckUtils]: 6: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,163 INFO L290 TraceCheckUtils]: 7: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,163 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,163 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,164 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #94#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,165 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,166 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,166 INFO L290 TraceCheckUtils]: 13: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,166 INFO L290 TraceCheckUtils]: 14: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,167 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #96#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {357#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {357#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:41,170 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {406#(<= |main_#t~post6| 0)} is VALID [2022-04-28 12:29:41,171 INFO L290 TraceCheckUtils]: 18: Hoare triple {406#(<= |main_#t~post6| 0)} assume !(#t~post6 < 50);havoc #t~post6; {350#false} is VALID [2022-04-28 12:29:41,171 INFO L272 TraceCheckUtils]: 19: Hoare triple {350#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)); {350#false} is VALID [2022-04-28 12:29:41,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2022-04-28 12:29:41,171 INFO L290 TraceCheckUtils]: 21: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2022-04-28 12:29:41,172 INFO L290 TraceCheckUtils]: 22: Hoare triple {350#false} assume !false; {350#false} is VALID [2022-04-28 12:29:41,172 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:41,172 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:41,172 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:41,172 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [299509762] [2022-04-28 12:29:41,172 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:41,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1049880380] [2022-04-28 12:29:41,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1049880380] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:41,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:41,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 12:29:41,174 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:41,174 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [776383434] [2022-04-28 12:29:41,174 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [776383434] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:41,174 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:41,174 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 12:29:41,174 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1311186216] [2022-04-28 12:29:41,174 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:41,175 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-28 12:29:41,175 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:41,175 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-28 12:29:41,192 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:41,192 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 12:29:41,192 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:41,193 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 12:29:41,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 12:29:41,194 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-28 12:29:41,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:41,280 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-28 12:29:41,280 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 12:29:41,280 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-28 12:29:41,281 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:41,281 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-28 12:29:41,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 12:29:41,295 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-28 12:29:41,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 12:29:41,297 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-28 12:29:41,339 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:41,340 INFO L225 Difference]: With dead ends: 44 [2022-04-28 12:29:41,340 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 12:29:41,346 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-28 12:29:41,347 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-28 12:29:41,347 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-28 12:29:41,348 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 12:29:41,362 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-28 12:29:41,362 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:41,362 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-28 12:29:41,362 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-28 12:29:41,363 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-28 12:29:41,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:41,364 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 12:29:41,365 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 12:29:41,365 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:41,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:41,365 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-28 12:29:41,366 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-28 12:29:41,367 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:41,367 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 12:29:41,367 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 12:29:41,368 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:41,368 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:41,368 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:41,368 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:41,368 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-28 12:29:41,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-28 12:29:41,376 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-28 12:29:41,376 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:41,376 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-28 12:29:41,377 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-28 12:29:41,377 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 47 transitions. [2022-04-28 12:29:41,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:41,411 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 12:29:41,412 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 12:29:41,412 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:41,412 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-28 12:29:41,431 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-28 12:29:41,628 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:41,628 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:41,629 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:41,629 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-28 12:29:41,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:41,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [758774173] [2022-04-28 12:29:41,629 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:41,629 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 2 times [2022-04-28 12:29:41,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:41,630 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1605379008] [2022-04-28 12:29:41,630 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:41,630 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:41,643 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:41,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [675634635] [2022-04-28 12:29:41,643 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:41,644 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:41,644 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:41,644 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:41,664 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 12:29:41,702 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 12:29:41,702 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:41,703 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 12:29:41,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:41,716 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:41,943 INFO L272 TraceCheckUtils]: 0: Hoare triple {657#true} call ULTIMATE.init(); {657#true} is VALID [2022-04-28 12:29:41,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {657#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; {657#true} is VALID [2022-04-28 12:29:41,944 INFO L290 TraceCheckUtils]: 2: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 12:29:41,944 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {657#true} {657#true} #108#return; {657#true} is VALID [2022-04-28 12:29:41,944 INFO L272 TraceCheckUtils]: 4: Hoare triple {657#true} call #t~ret9 := main(); {657#true} is VALID [2022-04-28 12:29:41,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {657#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; {657#true} is VALID [2022-04-28 12:29:41,944 INFO L272 TraceCheckUtils]: 6: Hoare triple {657#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 12:29:41,944 INFO L290 TraceCheckUtils]: 7: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 12:29:41,944 INFO L290 TraceCheckUtils]: 8: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 12:29:41,945 INFO L290 TraceCheckUtils]: 9: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 12:29:41,945 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {657#true} {657#true} #94#return; {657#true} is VALID [2022-04-28 12:29:41,945 INFO L272 TraceCheckUtils]: 11: Hoare triple {657#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 12:29:41,945 INFO L290 TraceCheckUtils]: 12: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 12:29:41,945 INFO L290 TraceCheckUtils]: 13: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 12:29:41,945 INFO L290 TraceCheckUtils]: 14: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 12:29:41,945 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {657#true} {657#true} #96#return; {657#true} is VALID [2022-04-28 12:29:41,946 INFO L290 TraceCheckUtils]: 16: Hoare triple {657#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:41,946 INFO L290 TraceCheckUtils]: 17: Hoare triple {710#(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; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:41,947 INFO L290 TraceCheckUtils]: 18: Hoare triple {710#(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 < 50);havoc #t~post6; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:41,948 INFO L290 TraceCheckUtils]: 19: Hoare triple {710#(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); {720#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:41,949 INFO L272 TraceCheckUtils]: 20: Hoare triple {720#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:41,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:41,950 INFO L290 TraceCheckUtils]: 22: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {658#false} is VALID [2022-04-28 12:29:41,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {658#false} assume !false; {658#false} is VALID [2022-04-28 12:29:41,951 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:41,951 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:41,951 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:41,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1605379008] [2022-04-28 12:29:41,951 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:41,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [675634635] [2022-04-28 12:29:41,951 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [675634635] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:41,951 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:41,951 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:29:41,952 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:41,952 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [758774173] [2022-04-28 12:29:41,952 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [758774173] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:41,952 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:41,952 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:29:41,952 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1518002109] [2022-04-28 12:29:41,952 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:41,953 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 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 24 [2022-04-28 12:29:41,953 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:41,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:41,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:41,968 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:29:41,968 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:41,968 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:29:41,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 12:29:41,969 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:42,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:42,278 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-28 12:29:42,278 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:29:42,278 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 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 24 [2022-04-28 12:29:42,278 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:42,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:42,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 12:29:42,282 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:42,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 12:29:42,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-28 12:29:42,345 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:42,346 INFO L225 Difference]: With dead ends: 57 [2022-04-28 12:29:42,346 INFO L226 Difference]: Without dead ends: 54 [2022-04-28 12:29:42,347 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-28 12:29:42,347 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 18 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:42,348 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 169 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:29:42,348 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-28 12:29:42,362 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-28 12:29:42,362 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:42,362 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:42,362 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:42,363 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:42,365 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:42,365 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 12:29:42,365 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 12:29:42,365 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:42,365 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:42,366 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 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 54 states. [2022-04-28 12:29:42,366 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 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 54 states. [2022-04-28 12:29:42,368 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:42,368 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 12:29:42,368 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 12:29:42,368 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:42,368 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:42,368 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:42,369 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:42,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:42,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 70 transitions. [2022-04-28 12:29:42,370 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 70 transitions. Word has length 24 [2022-04-28 12:29:42,371 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:42,371 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 70 transitions. [2022-04-28 12:29:42,371 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:42,371 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 70 transitions. [2022-04-28 12:29:42,426 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-28 12:29:42,426 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-28 12:29:42,426 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 12:29:42,426 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:42,426 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-28 12:29:42,444 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:42,642 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-28 12:29:42,642 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:42,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:42,643 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-28 12:29:42,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:42,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1920999130] [2022-04-28 12:29:42,643 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:42,643 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 2 times [2022-04-28 12:29:42,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:42,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [928597312] [2022-04-28 12:29:42,644 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:42,644 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:42,658 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:42,658 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1636719368] [2022-04-28 12:29:42,658 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:42,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:42,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:42,669 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:42,669 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 12:29:42,711 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:42,712 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:42,712 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 12:29:42,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:42,721 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:42,827 INFO L272 TraceCheckUtils]: 0: Hoare triple {1066#true} call ULTIMATE.init(); {1066#true} is VALID [2022-04-28 12:29:42,828 INFO L290 TraceCheckUtils]: 1: Hoare triple {1066#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; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,828 INFO L290 TraceCheckUtils]: 2: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,828 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1074#(<= ~counter~0 0)} {1066#true} #108#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,829 INFO L272 TraceCheckUtils]: 4: Hoare triple {1074#(<= ~counter~0 0)} call #t~ret9 := main(); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,829 INFO L290 TraceCheckUtils]: 5: Hoare triple {1074#(<= ~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; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,829 INFO L272 TraceCheckUtils]: 6: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,830 INFO L290 TraceCheckUtils]: 7: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,831 INFO L290 TraceCheckUtils]: 8: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,831 INFO L290 TraceCheckUtils]: 9: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,832 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #94#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,832 INFO L272 TraceCheckUtils]: 11: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,832 INFO L290 TraceCheckUtils]: 12: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,833 INFO L290 TraceCheckUtils]: 13: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,833 INFO L290 TraceCheckUtils]: 14: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,833 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #96#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,834 INFO L290 TraceCheckUtils]: 16: Hoare triple {1074#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:42,834 INFO L290 TraceCheckUtils]: 17: Hoare triple {1074#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:42,834 INFO L290 TraceCheckUtils]: 18: Hoare triple {1123#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:42,835 INFO L290 TraceCheckUtils]: 19: Hoare triple {1123#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:42,835 INFO L290 TraceCheckUtils]: 20: Hoare triple {1123#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1133#(<= |main_#t~post7| 1)} is VALID [2022-04-28 12:29:42,835 INFO L290 TraceCheckUtils]: 21: Hoare triple {1133#(<= |main_#t~post7| 1)} assume !(#t~post7 < 50);havoc #t~post7; {1067#false} is VALID [2022-04-28 12:29:42,835 INFO L290 TraceCheckUtils]: 22: Hoare triple {1067#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; {1067#false} is VALID [2022-04-28 12:29:42,836 INFO L290 TraceCheckUtils]: 23: Hoare triple {1067#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1067#false} is VALID [2022-04-28 12:29:42,836 INFO L290 TraceCheckUtils]: 24: Hoare triple {1067#false} assume !(#t~post6 < 50);havoc #t~post6; {1067#false} is VALID [2022-04-28 12:29:42,836 INFO L272 TraceCheckUtils]: 25: Hoare triple {1067#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)); {1067#false} is VALID [2022-04-28 12:29:42,836 INFO L290 TraceCheckUtils]: 26: Hoare triple {1067#false} ~cond := #in~cond; {1067#false} is VALID [2022-04-28 12:29:42,836 INFO L290 TraceCheckUtils]: 27: Hoare triple {1067#false} assume 0 == ~cond; {1067#false} is VALID [2022-04-28 12:29:42,836 INFO L290 TraceCheckUtils]: 28: Hoare triple {1067#false} assume !false; {1067#false} is VALID [2022-04-28 12:29:42,836 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-28 12:29:42,836 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:42,837 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:42,837 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [928597312] [2022-04-28 12:29:42,837 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:42,837 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1636719368] [2022-04-28 12:29:42,837 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1636719368] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:42,837 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:42,837 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:29:42,837 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:42,838 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1920999130] [2022-04-28 12:29:42,838 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1920999130] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:42,838 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:42,838 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:29:42,838 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1277445068] [2022-04-28 12:29:42,838 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:42,838 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-28 12:29:42,839 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:42,839 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-28 12:29:42,855 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-28 12:29:42,856 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:29:42,856 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:42,856 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:29:42,856 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:29:42,856 INFO L87 Difference]: Start difference. First operand 53 states and 70 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-28 12:29:42,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:42,951 INFO L93 Difference]: Finished difference Result 77 states and 104 transitions. [2022-04-28 12:29:42,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:29:42,951 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-28 12:29:42,951 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:42,951 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-28 12:29:42,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 12:29:42,953 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-28 12:29:42,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 12:29:42,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-28 12:29:43,005 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-28 12:29:43,007 INFO L225 Difference]: With dead ends: 77 [2022-04-28 12:29:43,007 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 12:29:43,007 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-28 12:29:43,008 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-28 12:29:43,008 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-28 12:29:43,009 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 12:29:43,022 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-28 12:29:43,022 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:43,023 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 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-28 12:29:43,023 INFO L74 IsIncluded]: Start isIncluded. First operand 55 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-28 12:29:43,023 INFO L87 Difference]: Start difference. First operand 55 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-28 12:29:43,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:43,025 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 12:29:43,025 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 12:29:43,025 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:43,025 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:43,026 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 55 states. [2022-04-28 12:29:43,026 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 55 states. [2022-04-28 12:29:43,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:43,028 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 12:29:43,028 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 12:29:43,028 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:43,028 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:43,028 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:43,028 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:43,028 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-28 12:29:43,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-28 12:29:43,030 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-28 12:29:43,030 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:43,030 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-28 12:29:43,030 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-28 12:29:43,031 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 72 transitions. [2022-04-28 12:29:43,084 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:43,084 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 12:29:43,085 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-28 12:29:43,085 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:43,085 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-28 12:29:43,119 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:43,304 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:43,305 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:43,305 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:43,305 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-28 12:29:43,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:43,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2017669165] [2022-04-28 12:29:43,306 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:43,306 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 2 times [2022-04-28 12:29:43,306 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:43,306 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [785179228] [2022-04-28 12:29:43,306 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:43,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:43,326 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:43,326 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [56885017] [2022-04-28 12:29:43,327 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:43,327 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:43,327 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:43,328 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:43,329 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 12:29:43,363 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:43,363 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:43,364 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 12:29:43,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:43,372 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:43,490 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 12:29:43,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#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; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,491 INFO L290 TraceCheckUtils]: 2: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1539#(<= ~counter~0 0)} {1531#true} #108#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,491 INFO L272 TraceCheckUtils]: 4: Hoare triple {1539#(<= ~counter~0 0)} call #t~ret9 := main(); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,492 INFO L290 TraceCheckUtils]: 5: Hoare triple {1539#(<= ~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; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,493 INFO L272 TraceCheckUtils]: 6: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,493 INFO L290 TraceCheckUtils]: 7: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,493 INFO L290 TraceCheckUtils]: 8: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,495 INFO L290 TraceCheckUtils]: 9: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,495 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #94#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,502 INFO L272 TraceCheckUtils]: 11: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,502 INFO L290 TraceCheckUtils]: 12: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,502 INFO L290 TraceCheckUtils]: 13: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,502 INFO L290 TraceCheckUtils]: 14: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,503 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #96#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,503 INFO L290 TraceCheckUtils]: 16: Hoare triple {1539#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:43,504 INFO L290 TraceCheckUtils]: 17: Hoare triple {1539#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:43,504 INFO L290 TraceCheckUtils]: 18: Hoare triple {1588#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:43,504 INFO L290 TraceCheckUtils]: 19: Hoare triple {1588#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:43,504 INFO L290 TraceCheckUtils]: 20: Hoare triple {1588#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:43,505 INFO L290 TraceCheckUtils]: 21: Hoare triple {1598#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:43,505 INFO L290 TraceCheckUtils]: 22: Hoare triple {1598#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1598#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:43,505 INFO L290 TraceCheckUtils]: 23: Hoare triple {1598#(<= ~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; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:43,506 INFO L290 TraceCheckUtils]: 24: Hoare triple {1598#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1611#(<= |main_#t~post6| 2)} is VALID [2022-04-28 12:29:43,506 INFO L290 TraceCheckUtils]: 25: Hoare triple {1611#(<= |main_#t~post6| 2)} assume !(#t~post6 < 50);havoc #t~post6; {1532#false} is VALID [2022-04-28 12:29:43,506 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#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)); {1532#false} is VALID [2022-04-28 12:29:43,506 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 12:29:43,506 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 12:29:43,507 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 12:29:43,507 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-28 12:29:43,507 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:29:43,667 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 12:29:43,667 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 12:29:43,667 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 12:29:43,667 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#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)); {1532#false} is VALID [2022-04-28 12:29:43,668 INFO L290 TraceCheckUtils]: 25: Hoare triple {1639#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {1532#false} is VALID [2022-04-28 12:29:43,668 INFO L290 TraceCheckUtils]: 24: Hoare triple {1643#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1639#(< |main_#t~post6| 50)} is VALID [2022-04-28 12:29:43,668 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~counter~0 50)} ~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; {1643#(< ~counter~0 50)} is VALID [2022-04-28 12:29:43,669 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {1643#(< ~counter~0 50)} is VALID [2022-04-28 12:29:43,669 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {1643#(< ~counter~0 50)} is VALID [2022-04-28 12:29:43,669 INFO L290 TraceCheckUtils]: 20: Hoare triple {1656#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1643#(< ~counter~0 50)} is VALID [2022-04-28 12:29:43,670 INFO L290 TraceCheckUtils]: 19: Hoare triple {1656#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1656#(< ~counter~0 49)} is VALID [2022-04-28 12:29:43,670 INFO L290 TraceCheckUtils]: 18: Hoare triple {1656#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {1656#(< ~counter~0 49)} is VALID [2022-04-28 12:29:43,670 INFO L290 TraceCheckUtils]: 17: Hoare triple {1666#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1656#(< ~counter~0 49)} is VALID [2022-04-28 12:29:43,670 INFO L290 TraceCheckUtils]: 16: Hoare triple {1666#(< ~counter~0 48)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,671 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1531#true} {1666#(< ~counter~0 48)} #96#return; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,671 INFO L290 TraceCheckUtils]: 14: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 12:29:43,671 INFO L290 TraceCheckUtils]: 13: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 12:29:43,671 INFO L290 TraceCheckUtils]: 12: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 12:29:43,671 INFO L272 TraceCheckUtils]: 11: Hoare triple {1666#(< ~counter~0 48)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 12:29:43,672 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1531#true} {1666#(< ~counter~0 48)} #94#return; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 12:29:43,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 12:29:43,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 12:29:43,672 INFO L272 TraceCheckUtils]: 6: Hoare triple {1666#(< ~counter~0 48)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 12:29:43,672 INFO L290 TraceCheckUtils]: 5: Hoare triple {1666#(< ~counter~0 48)} 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; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,673 INFO L272 TraceCheckUtils]: 4: Hoare triple {1666#(< ~counter~0 48)} call #t~ret9 := main(); {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,673 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1666#(< ~counter~0 48)} {1531#true} #108#return; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,673 INFO L290 TraceCheckUtils]: 2: Hoare triple {1666#(< ~counter~0 48)} assume true; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,674 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#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; {1666#(< ~counter~0 48)} is VALID [2022-04-28 12:29:43,674 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 12:29:43,674 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-28 12:29:43,674 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:43,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [785179228] [2022-04-28 12:29:43,674 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:43,674 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [56885017] [2022-04-28 12:29:43,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [56885017] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:29:43,675 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:29:43,675 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 12:29:43,675 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:43,675 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2017669165] [2022-04-28 12:29:43,675 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2017669165] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:43,675 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:43,675 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:29:43,675 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1116259604] [2022-04-28 12:29:43,675 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:43,676 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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 30 [2022-04-28 12:29:43,676 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:43,676 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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-28 12:29:43,690 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:43,690 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:29:43,690 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:43,690 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:29:43,690 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 12:29:43,690 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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-28 12:29:43,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:43,810 INFO L93 Difference]: Finished difference Result 67 states and 85 transitions. [2022-04-28 12:29:43,810 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 12:29:43,810 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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 30 [2022-04-28 12:29:43,810 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:43,811 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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-28 12:29:43,811 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 12:29:43,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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-28 12:29:43,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 12:29:43,814 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 63 transitions. [2022-04-28 12:29:43,852 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:43,854 INFO L225 Difference]: With dead ends: 67 [2022-04-28 12:29:43,854 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 12:29:43,855 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-28 12:29:43,857 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:43,858 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 165 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:29:43,858 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 12:29:43,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-28 12:29:43,880 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:43,881 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:43,881 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:43,881 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:43,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:43,883 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 12:29:43,883 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 12:29:43,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:43,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:43,884 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 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 60 states. [2022-04-28 12:29:43,885 INFO L87 Difference]: Start difference. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 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 60 states. [2022-04-28 12:29:43,887 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:43,887 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 12:29:43,887 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 12:29:43,887 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:43,887 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:43,887 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:43,887 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:43,887 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:29:43,890 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 77 transitions. [2022-04-28 12:29:43,890 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 77 transitions. Word has length 30 [2022-04-28 12:29:43,890 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:43,890 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 77 transitions. [2022-04-28 12:29:43,890 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 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-28 12:29:43,890 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 77 transitions. [2022-04-28 12:29:43,946 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:43,946 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-28 12:29:43,947 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 12:29:43,948 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:43,948 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-28 12:29:43,975 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:44,164 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:44,164 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:44,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:44,165 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-28 12:29:44,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:44,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1748991277] [2022-04-28 12:29:44,165 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:44,165 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 2 times [2022-04-28 12:29:44,166 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:44,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1235869345] [2022-04-28 12:29:44,166 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:44,166 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:44,182 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:44,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [119713173] [2022-04-28 12:29:44,183 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:44,183 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:44,183 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:44,183 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:44,184 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 12:29:44,225 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:44,225 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:44,226 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 12:29:44,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:44,233 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:44,338 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 12:29:44,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#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; {2094#true} is VALID [2022-04-28 12:29:44,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 12:29:44,338 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 12:29:44,338 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 12:29:44,338 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#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; {2094#true} is VALID [2022-04-28 12:29:44,338 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 12:29:44,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:29:44,339 INFO L290 TraceCheckUtils]: 8: Hoare triple {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:44,339 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:44,340 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:44,340 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 12:29:44,340 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 12:29:44,340 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 12:29:44,340 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 12:29:44,341 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:44,343 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 12:29:44,343 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 12:29:44,343 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 12:29:44,344 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,344 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,345 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,345 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,345 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 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; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:44,346 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:44,346 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:44,346 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 12:29:44,346 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#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)); {2095#false} is VALID [2022-04-28 12:29:44,346 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 12:29:44,346 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 12:29:44,346 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 12:29:44,347 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-28 12:29:44,347 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:29:44,506 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 12:29:44,507 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 12:29:44,507 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 12:29:44,507 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#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)); {2095#false} is VALID [2022-04-28 12:29:44,507 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 12:29:44,507 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:44,508 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:44,508 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 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; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:44,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,509 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,509 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 12:29:44,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 12:29:44,510 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 12:29:44,510 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 12:29:44,510 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:44,510 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 12:29:44,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 12:29:44,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 12:29:44,511 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 12:29:44,511 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:44,511 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:44,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:44,512 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 12:29:44,512 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 12:29:44,512 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#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; {2094#true} is VALID [2022-04-28 12:29:44,512 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 12:29:44,512 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 12:29:44,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 12:29:44,513 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#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; {2094#true} is VALID [2022-04-28 12:29:44,513 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 12:29:44,513 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-28 12:29:44,513 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:44,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1235869345] [2022-04-28 12:29:44,513 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:44,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [119713173] [2022-04-28 12:29:44,513 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [119713173] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:29:44,513 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:29:44,513 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 12:29:44,514 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:44,514 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1748991277] [2022-04-28 12:29:44,514 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1748991277] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:44,514 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:44,514 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:29:44,514 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [562238192] [2022-04-28 12:29:44,514 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:44,514 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 12:29:44,514 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:44,514 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:44,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:44,531 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:29:44,531 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:44,531 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:29:44,531 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:29:44,532 INFO L87 Difference]: Start difference. First operand 59 states and 77 transitions. Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:45,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:45,222 INFO L93 Difference]: Finished difference Result 138 states and 201 transitions. [2022-04-28 12:29:45,222 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:29:45,223 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 12:29:45,223 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:45,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:45,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 12:29:45,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:45,228 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 12:29:45,228 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-28 12:29:45,340 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-28 12:29:45,342 INFO L225 Difference]: With dead ends: 138 [2022-04-28 12:29:45,342 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 12:29:45,343 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-28 12:29:45,343 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 115 mSDsluCounter, 234 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 119 SdHoareTripleChecker+Valid, 298 SdHoareTripleChecker+Invalid, 217 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:45,343 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [119 Valid, 298 Invalid, 217 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:29:45,344 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 12:29:45,447 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 88. [2022-04-28 12:29:45,448 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:45,448 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:45,448 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:45,448 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:45,459 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:45,459 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 12:29:45,459 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 12:29:45,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:45,460 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:45,461 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 12:29:45,461 INFO L87 Difference]: Start difference. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 12:29:45,466 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:45,466 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 12:29:45,466 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 12:29:45,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:45,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:45,467 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:45,467 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:45,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:45,470 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 122 transitions. [2022-04-28 12:29:45,470 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 122 transitions. Word has length 31 [2022-04-28 12:29:45,471 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:45,471 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 122 transitions. [2022-04-28 12:29:45,471 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:45,471 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 88 states and 122 transitions. [2022-04-28 12:29:45,595 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:45,595 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 122 transitions. [2022-04-28 12:29:45,595 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 12:29:45,595 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:45,596 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, 1, 1, 1, 1] [2022-04-28 12:29:45,614 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-28 12:29:45,809 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:45,810 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:45,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:45,810 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 1 times [2022-04-28 12:29:45,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:45,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [100017703] [2022-04-28 12:29:45,810 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:45,811 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 2 times [2022-04-28 12:29:45,811 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:45,811 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [277673290] [2022-04-28 12:29:45,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:45,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:45,829 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:45,830 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [522263140] [2022-04-28 12:29:45,830 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:45,830 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:45,830 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:45,842 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:45,843 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 12:29:45,889 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:45,889 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:45,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 12:29:45,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:45,899 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:46,073 INFO L272 TraceCheckUtils]: 0: Hoare triple {3016#true} call ULTIMATE.init(); {3016#true} is VALID [2022-04-28 12:29:46,074 INFO L290 TraceCheckUtils]: 1: Hoare triple {3016#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; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,075 INFO L290 TraceCheckUtils]: 2: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,075 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3024#(<= ~counter~0 0)} {3016#true} #108#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,075 INFO L272 TraceCheckUtils]: 4: Hoare triple {3024#(<= ~counter~0 0)} call #t~ret9 := main(); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,076 INFO L290 TraceCheckUtils]: 5: Hoare triple {3024#(<= ~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; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,076 INFO L272 TraceCheckUtils]: 6: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,076 INFO L290 TraceCheckUtils]: 7: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,077 INFO L290 TraceCheckUtils]: 8: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,077 INFO L290 TraceCheckUtils]: 9: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,077 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #94#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,078 INFO L272 TraceCheckUtils]: 11: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,083 INFO L290 TraceCheckUtils]: 12: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,084 INFO L290 TraceCheckUtils]: 14: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,084 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #96#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,084 INFO L290 TraceCheckUtils]: 16: Hoare triple {3024#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:46,085 INFO L290 TraceCheckUtils]: 17: Hoare triple {3024#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:46,085 INFO L290 TraceCheckUtils]: 18: Hoare triple {3073#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:46,085 INFO L290 TraceCheckUtils]: 19: Hoare triple {3073#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:46,086 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:46,086 INFO L290 TraceCheckUtils]: 21: Hoare triple {3083#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:46,086 INFO L290 TraceCheckUtils]: 22: Hoare triple {3083#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:46,087 INFO L290 TraceCheckUtils]: 23: Hoare triple {3083#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3093#(<= |main_#t~post8| 2)} is VALID [2022-04-28 12:29:46,087 INFO L290 TraceCheckUtils]: 24: Hoare triple {3093#(<= |main_#t~post8| 2)} assume !(#t~post8 < 50);havoc #t~post8; {3017#false} is VALID [2022-04-28 12:29:46,087 INFO L290 TraceCheckUtils]: 25: Hoare triple {3017#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {3017#false} is VALID [2022-04-28 12:29:46,087 INFO L290 TraceCheckUtils]: 26: Hoare triple {3017#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 27: Hoare triple {3017#false} assume !(#t~post7 < 50);havoc #t~post7; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 28: Hoare triple {3017#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; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 29: Hoare triple {3017#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 30: Hoare triple {3017#false} assume !(#t~post6 < 50);havoc #t~post6; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L272 TraceCheckUtils]: 31: Hoare triple {3017#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)); {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 32: Hoare triple {3017#false} ~cond := #in~cond; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 33: Hoare triple {3017#false} assume 0 == ~cond; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L290 TraceCheckUtils]: 34: Hoare triple {3017#false} assume !false; {3017#false} is VALID [2022-04-28 12:29:46,088 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:46,088 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:46,089 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:46,089 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [277673290] [2022-04-28 12:29:46,089 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:46,089 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [522263140] [2022-04-28 12:29:46,089 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [522263140] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:46,089 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:46,089 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:29:46,089 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:46,089 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [100017703] [2022-04-28 12:29:46,089 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [100017703] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:46,089 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:46,089 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:29:46,089 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [355232415] [2022-04-28 12:29:46,090 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:46,090 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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 35 [2022-04-28 12:29:46,090 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:46,090 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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-28 12:29:46,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:46,109 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:29:46,110 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:46,110 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:29:46,110 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 12:29:46,110 INFO L87 Difference]: Start difference. First operand 88 states and 122 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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-28 12:29:46,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:46,356 INFO L93 Difference]: Finished difference Result 127 states and 178 transitions. [2022-04-28 12:29:46,356 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:29:46,357 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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 35 [2022-04-28 12:29:46,357 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:46,357 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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-28 12:29:46,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 12:29:46,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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-28 12:29:46,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 12:29:46,359 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-28 12:29:46,423 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-28 12:29:46,424 INFO L225 Difference]: With dead ends: 127 [2022-04-28 12:29:46,424 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 12:29:46,424 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 30 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-28 12:29:46,425 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-28 12:29:46,425 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-28 12:29:46,425 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 12:29:46,552 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-04-28 12:29:46,552 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:46,553 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:46,553 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:46,553 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:46,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:46,556 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 12:29:46,556 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 12:29:46,556 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:46,556 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:46,556 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 12:29:46,557 INFO L87 Difference]: Start difference. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 12:29:46,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:46,559 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 12:29:46,559 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 12:29:46,560 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:46,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:46,560 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:46,560 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:46,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 12:29:46,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 124 transitions. [2022-04-28 12:29:46,563 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 124 transitions. Word has length 35 [2022-04-28 12:29:46,563 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:46,563 INFO L495 AbstractCegarLoop]: Abstraction has 90 states and 124 transitions. [2022-04-28 12:29:46,563 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 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-28 12:29:46,563 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 90 states and 124 transitions. [2022-04-28 12:29:46,714 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-28 12:29:46,715 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 12:29:46,716 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 12:29:46,716 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:46,716 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:29:46,732 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:46,932 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:46,932 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:46,932 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:46,932 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 1 times [2022-04-28 12:29:46,932 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:46,933 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1729563375] [2022-04-28 12:29:46,933 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:46,933 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 2 times [2022-04-28 12:29:46,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:46,933 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [342146038] [2022-04-28 12:29:46,933 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:46,933 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:46,975 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:46,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1886541511] [2022-04-28 12:29:46,975 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:46,975 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:46,975 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:46,988 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:47,000 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 12:29:47,038 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:47,039 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:47,039 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 12:29:47,061 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:47,062 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:47,254 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 12:29:47,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#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; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,255 INFO L290 TraceCheckUtils]: 2: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,255 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3748#(<= ~counter~0 0)} {3740#true} #108#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,255 INFO L272 TraceCheckUtils]: 4: Hoare triple {3748#(<= ~counter~0 0)} call #t~ret9 := main(); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {3748#(<= ~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; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,256 INFO L272 TraceCheckUtils]: 6: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #94#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,258 INFO L272 TraceCheckUtils]: 11: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,258 INFO L290 TraceCheckUtils]: 12: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,260 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #96#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,260 INFO L290 TraceCheckUtils]: 16: Hoare triple {3748#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 12:29:47,261 INFO L290 TraceCheckUtils]: 17: Hoare triple {3748#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:47,261 INFO L290 TraceCheckUtils]: 18: Hoare triple {3797#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:47,261 INFO L290 TraceCheckUtils]: 19: Hoare triple {3797#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 12:29:47,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {3797#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:47,262 INFO L290 TraceCheckUtils]: 21: Hoare triple {3807#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:47,263 INFO L290 TraceCheckUtils]: 22: Hoare triple {3807#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {3807#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:47,263 INFO L290 TraceCheckUtils]: 23: Hoare triple {3807#(<= ~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; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 12:29:47,263 INFO L290 TraceCheckUtils]: 24: Hoare triple {3807#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 12:29:47,264 INFO L290 TraceCheckUtils]: 25: Hoare triple {3820#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 12:29:47,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {3820#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 12:29:47,265 INFO L290 TraceCheckUtils]: 27: Hoare triple {3820#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3830#(<= |main_#t~post7| 3)} is VALID [2022-04-28 12:29:47,265 INFO L290 TraceCheckUtils]: 28: Hoare triple {3830#(<= |main_#t~post7| 3)} assume !(#t~post7 < 50);havoc #t~post7; {3741#false} is VALID [2022-04-28 12:29:47,265 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#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; {3741#false} is VALID [2022-04-28 12:29:47,265 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 12:29:47,265 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 50);havoc #t~post6; {3741#false} is VALID [2022-04-28 12:29:47,265 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#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)); {3741#false} is VALID [2022-04-28 12:29:47,265 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 12:29:47,266 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 12:29:47,266 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 12:29:47,266 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:47,266 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:29:47,504 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 12:29:47,504 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 12:29:47,504 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 12:29:47,504 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#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)); {3741#false} is VALID [2022-04-28 12:29:47,504 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 50);havoc #t~post6; {3741#false} is VALID [2022-04-28 12:29:47,504 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 12:29:47,504 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#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; {3741#false} is VALID [2022-04-28 12:29:47,505 INFO L290 TraceCheckUtils]: 28: Hoare triple {3876#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {3741#false} is VALID [2022-04-28 12:29:47,505 INFO L290 TraceCheckUtils]: 27: Hoare triple {3880#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3876#(< |main_#t~post7| 50)} is VALID [2022-04-28 12:29:47,506 INFO L290 TraceCheckUtils]: 26: Hoare triple {3880#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3880#(< ~counter~0 50)} is VALID [2022-04-28 12:29:47,506 INFO L290 TraceCheckUtils]: 25: Hoare triple {3880#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {3880#(< ~counter~0 50)} is VALID [2022-04-28 12:29:47,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {3890#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3880#(< ~counter~0 50)} is VALID [2022-04-28 12:29:47,507 INFO L290 TraceCheckUtils]: 23: Hoare triple {3890#(< ~counter~0 49)} ~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; {3890#(< ~counter~0 49)} is VALID [2022-04-28 12:29:47,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {3890#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {3890#(< ~counter~0 49)} is VALID [2022-04-28 12:29:47,508 INFO L290 TraceCheckUtils]: 21: Hoare triple {3890#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {3890#(< ~counter~0 49)} is VALID [2022-04-28 12:29:47,509 INFO L290 TraceCheckUtils]: 20: Hoare triple {3903#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3890#(< ~counter~0 49)} is VALID [2022-04-28 12:29:47,509 INFO L290 TraceCheckUtils]: 19: Hoare triple {3903#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3903#(< ~counter~0 48)} is VALID [2022-04-28 12:29:47,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {3903#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {3903#(< ~counter~0 48)} is VALID [2022-04-28 12:29:47,510 INFO L290 TraceCheckUtils]: 17: Hoare triple {3913#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3903#(< ~counter~0 48)} is VALID [2022-04-28 12:29:47,510 INFO L290 TraceCheckUtils]: 16: Hoare triple {3913#(< ~counter~0 47)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,511 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3740#true} {3913#(< ~counter~0 47)} #96#return; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 12:29:47,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 12:29:47,511 INFO L290 TraceCheckUtils]: 12: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 12:29:47,511 INFO L272 TraceCheckUtils]: 11: Hoare triple {3913#(< ~counter~0 47)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 12:29:47,511 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3740#true} {3913#(< ~counter~0 47)} #94#return; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,512 INFO L290 TraceCheckUtils]: 9: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 12:29:47,512 INFO L290 TraceCheckUtils]: 8: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 12:29:47,512 INFO L290 TraceCheckUtils]: 7: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 12:29:47,512 INFO L272 TraceCheckUtils]: 6: Hoare triple {3913#(< ~counter~0 47)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 12:29:47,512 INFO L290 TraceCheckUtils]: 5: Hoare triple {3913#(< ~counter~0 47)} 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; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,513 INFO L272 TraceCheckUtils]: 4: Hoare triple {3913#(< ~counter~0 47)} call #t~ret9 := main(); {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,513 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3913#(< ~counter~0 47)} {3740#true} #108#return; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,513 INFO L290 TraceCheckUtils]: 2: Hoare triple {3913#(< ~counter~0 47)} assume true; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,514 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#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; {3913#(< ~counter~0 47)} is VALID [2022-04-28 12:29:47,514 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 12:29:47,514 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:47,514 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:47,514 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [342146038] [2022-04-28 12:29:47,514 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:47,515 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1886541511] [2022-04-28 12:29:47,515 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1886541511] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:29:47,515 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:29:47,515 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 12:29:47,515 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:47,515 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1729563375] [2022-04-28 12:29:47,515 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1729563375] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:47,515 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:47,515 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 12:29:47,515 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1153309317] [2022-04-28 12:29:47,515 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:47,516 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:47,516 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:47,516 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:47,571 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:47,571 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 12:29:47,572 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:47,572 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 12:29:47,572 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 12:29:47,572 INFO L87 Difference]: Start difference. First operand 90 states and 124 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:47,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:47,870 INFO L93 Difference]: Finished difference Result 163 states and 227 transitions. [2022-04-28 12:29:47,870 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 12:29:47,870 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:47,870 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:47,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:47,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 12:29:47,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:47,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 12:29:47,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 109 transitions. [2022-04-28 12:29:47,939 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:47,941 INFO L225 Difference]: With dead ends: 163 [2022-04-28 12:29:47,941 INFO L226 Difference]: Without dead ends: 112 [2022-04-28 12:29:47,941 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=60, Invalid=96, Unknown=0, NotChecked=0, Total=156 [2022-04-28 12:29:47,942 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 34 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:47,942 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [34 Valid, 180 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:29:47,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-28 12:29:48,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 109. [2022-04-28 12:29:48,070 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:48,071 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 12:29:48,071 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 12:29:48,071 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 12:29:48,074 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:48,074 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 12:29:48,074 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 12:29:48,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:48,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:48,075 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 12:29:48,075 INFO L87 Difference]: Start difference. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 12:29:48,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:48,077 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 12:29:48,077 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 12:29:48,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:48,078 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:48,078 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:48,078 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:48,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 12:29:48,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 147 transitions. [2022-04-28 12:29:48,081 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 147 transitions. Word has length 36 [2022-04-28 12:29:48,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:48,081 INFO L495 AbstractCegarLoop]: Abstraction has 109 states and 147 transitions. [2022-04-28 12:29:48,081 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 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-28 12:29:48,081 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 109 states and 147 transitions. [2022-04-28 12:29:48,219 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 147 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:48,219 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 147 transitions. [2022-04-28 12:29:48,220 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 12:29:48,220 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:48,220 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-28 12:29:48,253 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:48,437 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:48,437 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:48,437 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:48,437 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-28 12:29:48,437 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:48,437 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1824797707] [2022-04-28 12:29:48,438 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:48,438 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 2 times [2022-04-28 12:29:48,438 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:48,438 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [376054447] [2022-04-28 12:29:48,438 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:48,438 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:48,455 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:48,456 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1521409706] [2022-04-28 12:29:48,456 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:48,456 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:48,456 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:48,457 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:48,458 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 12:29:48,492 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:48,493 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:48,493 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 12:29:48,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:48,500 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:48,733 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 12:29:48,733 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#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; {4737#true} is VALID [2022-04-28 12:29:48,734 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 12:29:48,734 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 12:29:48,734 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 12:29:48,734 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#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; {4737#true} is VALID [2022-04-28 12:29:48,734 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 12:29:48,734 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:29:48,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:48,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:48,735 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} {4737#true} #94#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:48,735 INFO L272 TraceCheckUtils]: 11: Hoare triple {4774#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 12:29:48,735 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 12:29:48,736 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 12:29:48,736 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 12:29:48,737 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4774#(<= 1 main_~x~0)} #96#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:48,737 INFO L290 TraceCheckUtils]: 16: Hoare triple {4774#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,737 INFO L290 TraceCheckUtils]: 17: Hoare triple {4793#(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; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,738 INFO L290 TraceCheckUtils]: 18: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,738 INFO L290 TraceCheckUtils]: 19: Hoare triple {4793#(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; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,739 INFO L290 TraceCheckUtils]: 20: Hoare triple {4793#(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; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,739 INFO L290 TraceCheckUtils]: 21: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,739 INFO L290 TraceCheckUtils]: 22: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:29:48,740 INFO L290 TraceCheckUtils]: 23: Hoare triple {4793#(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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,740 INFO L290 TraceCheckUtils]: 24: Hoare triple {4815#(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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,740 INFO L290 TraceCheckUtils]: 25: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,741 INFO L290 TraceCheckUtils]: 26: Hoare triple {4815#(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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,741 INFO L290 TraceCheckUtils]: 27: Hoare triple {4815#(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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,741 INFO L290 TraceCheckUtils]: 28: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {4815#(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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,742 INFO L290 TraceCheckUtils]: 30: Hoare triple {4815#(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; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,742 INFO L290 TraceCheckUtils]: 31: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 50);havoc #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:29:48,743 INFO L272 TraceCheckUtils]: 32: Hoare triple {4815#(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)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:48,744 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:48,744 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 12:29:48,744 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 12:29:48,744 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-28 12:29:48,745 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:29:48,922 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 12:29:48,926 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 12:29:48,929 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:48,929 INFO L272 TraceCheckUtils]: 32: Hoare triple {4863#(= 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)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:48,930 INFO L290 TraceCheckUtils]: 31: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,930 INFO L290 TraceCheckUtils]: 30: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,930 INFO L290 TraceCheckUtils]: 29: Hoare triple {4863#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,931 INFO L290 TraceCheckUtils]: 28: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,931 INFO L290 TraceCheckUtils]: 27: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {4863#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,934 INFO L290 TraceCheckUtils]: 25: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,934 INFO L290 TraceCheckUtils]: 24: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,935 INFO L290 TraceCheckUtils]: 23: Hoare triple {4891#(= 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; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:48,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,935 INFO L290 TraceCheckUtils]: 21: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,936 INFO L290 TraceCheckUtils]: 19: Hoare triple {4891#(= 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; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,936 INFO L290 TraceCheckUtils]: 18: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,936 INFO L290 TraceCheckUtils]: 17: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,937 INFO L290 TraceCheckUtils]: 16: Hoare triple {4737#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:48,937 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4737#true} #96#return; {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L272 TraceCheckUtils]: 11: Hoare triple {4737#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4737#true} {4737#true} #94#return; {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 12:29:48,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#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; {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#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; {4737#true} is VALID [2022-04-28 12:29:48,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 12:29:48,938 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-28 12:29:48,938 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:48,938 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [376054447] [2022-04-28 12:29:48,939 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:48,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1521409706] [2022-04-28 12:29:48,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1521409706] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:29:48,939 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:29:48,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-28 12:29:48,939 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:48,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1824797707] [2022-04-28 12:29:48,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1824797707] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:48,939 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:48,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:29:48,939 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [897517716] [2022-04-28 12:29:48,939 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:48,940 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 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 36 [2022-04-28 12:29:48,940 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:48,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:48,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:48,968 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:29:48,968 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:48,968 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:29:48,968 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 12:29:48,968 INFO L87 Difference]: Start difference. First operand 109 states and 147 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:49,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:49,580 INFO L93 Difference]: Finished difference Result 154 states and 208 transitions. [2022-04-28 12:29:49,580 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 12:29:49,580 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 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 36 [2022-04-28 12:29:49,581 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:49,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:49,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 12:29:49,582 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:49,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 12:29:49,583 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-28 12:29:49,658 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-28 12:29:49,660 INFO L225 Difference]: With dead ends: 154 [2022-04-28 12:29:49,660 INFO L226 Difference]: Without dead ends: 152 [2022-04-28 12:29:49,660 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 12:29:49,661 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 61 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:49,661 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 326 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:29:49,661 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-28 12:29:49,824 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 148. [2022-04-28 12:29:49,824 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:49,824 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:49,824 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:49,825 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:49,828 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:49,828 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 12:29:49,828 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 12:29:49,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:49,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:49,829 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 12:29:49,829 INFO L87 Difference]: Start difference. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 12:29:49,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:49,832 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 12:29:49,832 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 12:29:49,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:49,832 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:49,832 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:49,832 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:49,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:49,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 202 transitions. [2022-04-28 12:29:49,835 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 202 transitions. Word has length 36 [2022-04-28 12:29:49,835 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:49,835 INFO L495 AbstractCegarLoop]: Abstraction has 148 states and 202 transitions. [2022-04-28 12:29:49,835 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 12:29:49,836 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 148 states and 202 transitions. [2022-04-28 12:29:50,002 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:50,002 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 202 transitions. [2022-04-28 12:29:50,002 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 12:29:50,002 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:50,003 INFO L195 NwaCegarLoop]: trace histogram [3, 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-28 12:29:50,020 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:50,208 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-28 12:29:50,209 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:50,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:50,209 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 3 times [2022-04-28 12:29:50,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:50,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [846501754] [2022-04-28 12:29:50,209 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:50,209 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 4 times [2022-04-28 12:29:50,210 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:50,218 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [843976200] [2022-04-28 12:29:50,218 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:50,218 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:50,229 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:50,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1830114281] [2022-04-28 12:29:50,229 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:29:50,229 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:50,229 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:50,247 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:50,263 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 12:29:50,298 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:29:50,298 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:50,299 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 12:29:50,305 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:50,309 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:50,398 INFO L272 TraceCheckUtils]: 0: Hoare triple {5875#true} call ULTIMATE.init(); {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L290 TraceCheckUtils]: 1: Hoare triple {5875#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; {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L290 TraceCheckUtils]: 2: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5875#true} {5875#true} #108#return; {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L272 TraceCheckUtils]: 4: Hoare triple {5875#true} call #t~ret9 := main(); {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L290 TraceCheckUtils]: 5: Hoare triple {5875#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; {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L272 TraceCheckUtils]: 6: Hoare triple {5875#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L290 TraceCheckUtils]: 7: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L290 TraceCheckUtils]: 9: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 12:29:50,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5875#true} {5875#true} #94#return; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L272 TraceCheckUtils]: 11: Hoare triple {5875#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 12: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 13: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 14: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5875#true} {5875#true} #96#return; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 16: Hoare triple {5875#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 17: Hoare triple {5875#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 18: Hoare triple {5875#true} assume !!(#t~post6 < 50);havoc #t~post6; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 19: Hoare triple {5875#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {5875#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5875#true} is VALID [2022-04-28 12:29:50,400 INFO L290 TraceCheckUtils]: 21: Hoare triple {5875#true} assume !!(#t~post7 < 50);havoc #t~post7; {5875#true} is VALID [2022-04-28 12:29:50,401 INFO L290 TraceCheckUtils]: 22: Hoare triple {5875#true} assume !(~c~0 >= ~b~0); {5946#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:29:50,401 INFO L290 TraceCheckUtils]: 23: Hoare triple {5946#(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; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:29:50,401 INFO L290 TraceCheckUtils]: 24: Hoare triple {5950#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:29:50,402 INFO L290 TraceCheckUtils]: 25: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:29:50,402 INFO L290 TraceCheckUtils]: 26: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:29:50,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {5960#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 28: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 29: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {5876#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; {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {5876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 32: Hoare triple {5876#false} assume !(#t~post6 < 50);havoc #t~post6; {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L272 TraceCheckUtils]: 33: Hoare triple {5876#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)); {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 34: Hoare triple {5876#false} ~cond := #in~cond; {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 35: Hoare triple {5876#false} assume 0 == ~cond; {5876#false} is VALID [2022-04-28 12:29:50,403 INFO L290 TraceCheckUtils]: 36: Hoare triple {5876#false} assume !false; {5876#false} is VALID [2022-04-28 12:29:50,404 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:29:50,404 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:50,404 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:50,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [843976200] [2022-04-28 12:29:50,404 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:50,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1830114281] [2022-04-28 12:29:50,404 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1830114281] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:50,404 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:50,404 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:29:50,404 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:50,404 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [846501754] [2022-04-28 12:29:50,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [846501754] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:50,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:50,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:29:50,405 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [770752110] [2022-04-28 12:29:50,405 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:50,405 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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 37 [2022-04-28 12:29:50,405 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:50,405 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:50,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:50,425 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:29:50,425 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:50,425 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:29:50,425 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:29:50,425 INFO L87 Difference]: Start difference. First operand 148 states and 202 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:51,051 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:51,051 INFO L93 Difference]: Finished difference Result 300 states and 442 transitions. [2022-04-28 12:29:51,051 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:29:51,051 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 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 37 [2022-04-28 12:29:51,052 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:51,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:51,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 12:29:51,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:51,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 12:29:51,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-28 12:29:51,130 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-28 12:29:51,136 INFO L225 Difference]: With dead ends: 300 [2022-04-28 12:29:51,136 INFO L226 Difference]: Without dead ends: 249 [2022-04-28 12:29:51,137 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-28 12:29:51,138 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 29 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:51,138 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 176 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:29:51,139 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-04-28 12:29:51,392 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 175. [2022-04-28 12:29:51,392 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:51,392 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:51,392 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:51,394 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:51,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:51,400 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 12:29:51,400 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 12:29:51,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:51,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:51,401 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 12:29:51,401 INFO L87 Difference]: Start difference. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 12:29:51,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:51,407 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 12:29:51,407 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 12:29:51,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:51,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:51,407 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:51,407 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:51,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 12:29:51,428 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 239 transitions. [2022-04-28 12:29:51,428 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 239 transitions. Word has length 37 [2022-04-28 12:29:51,428 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:51,428 INFO L495 AbstractCegarLoop]: Abstraction has 175 states and 239 transitions. [2022-04-28 12:29:51,428 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 12:29:51,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 175 states and 239 transitions. [2022-04-28 12:29:51,645 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:51,645 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 239 transitions. [2022-04-28 12:29:51,645 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 12:29:51,645 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:51,645 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-28 12:29:51,662 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:51,846 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 12:29:51,846 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:51,846 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:51,846 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-28 12:29:51,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:51,846 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [850171070] [2022-04-28 12:29:51,847 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:51,847 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 2 times [2022-04-28 12:29:51,847 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:51,847 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1756664839] [2022-04-28 12:29:51,847 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:51,847 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:51,857 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:51,857 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1601261790] [2022-04-28 12:29:51,857 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:51,858 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:51,858 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:51,868 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:51,880 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 12:29:51,914 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:51,914 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:51,915 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 12:29:51,921 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:51,921 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:52,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {7443#true} call ULTIMATE.init(); {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {7443#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; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7443#true} {7443#true} #108#return; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L272 TraceCheckUtils]: 4: Hoare triple {7443#true} call #t~ret9 := main(); {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L290 TraceCheckUtils]: 5: Hoare triple {7443#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; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L272 TraceCheckUtils]: 6: Hoare triple {7443#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L290 TraceCheckUtils]: 7: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L290 TraceCheckUtils]: 8: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7443#true} {7443#true} #94#return; {7443#true} is VALID [2022-04-28 12:29:52,081 INFO L272 TraceCheckUtils]: 11: Hoare triple {7443#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 12:29:52,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {7443#true} ~cond := #in~cond; {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:29:52,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:52,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:52,083 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} {7443#true} #96#return; {7495#(<= 1 main_~y~0)} is VALID [2022-04-28 12:29:52,083 INFO L290 TraceCheckUtils]: 16: Hoare triple {7495#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:52,083 INFO L290 TraceCheckUtils]: 17: Hoare triple {7499#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:52,083 INFO L290 TraceCheckUtils]: 18: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 12:29:52,084 INFO L290 TraceCheckUtils]: 19: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,084 INFO L290 TraceCheckUtils]: 20: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,085 INFO L290 TraceCheckUtils]: 21: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 50);havoc #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,085 INFO L290 TraceCheckUtils]: 22: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,086 INFO L290 TraceCheckUtils]: 23: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,086 INFO L290 TraceCheckUtils]: 24: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,086 INFO L272 TraceCheckUtils]: 25: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 12:29:52,086 INFO L290 TraceCheckUtils]: 26: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 12:29:52,086 INFO L290 TraceCheckUtils]: 27: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 12:29:52,086 INFO L290 TraceCheckUtils]: 28: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 12:29:52,087 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #98#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,087 INFO L272 TraceCheckUtils]: 30: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 12:29:52,087 INFO L290 TraceCheckUtils]: 31: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 12:29:52,087 INFO L290 TraceCheckUtils]: 32: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 12:29:52,087 INFO L290 TraceCheckUtils]: 33: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 12:29:52,088 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #100#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:29:52,088 INFO L272 TraceCheckUtils]: 35: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:52,089 INFO L290 TraceCheckUtils]: 36: Hoare triple {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:52,089 INFO L290 TraceCheckUtils]: 37: Hoare triple {7562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7444#false} is VALID [2022-04-28 12:29:52,089 INFO L290 TraceCheckUtils]: 38: Hoare triple {7444#false} assume !false; {7444#false} is VALID [2022-04-28 12:29:52,089 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 12:29:52,089 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:52,089 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:52,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1756664839] [2022-04-28 12:29:52,090 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:52,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1601261790] [2022-04-28 12:29:52,090 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1601261790] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:52,090 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:52,090 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:29:52,090 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:52,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [850171070] [2022-04-28 12:29:52,090 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [850171070] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:52,090 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:52,090 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:29:52,090 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [28738536] [2022-04-28 12:29:52,091 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:52,092 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 12:29:52,093 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:52,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:29:52,114 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:52,114 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:29:52,114 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:52,115 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:29:52,115 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:29:52,144 INFO L87 Difference]: Start difference. First operand 175 states and 239 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:29:52,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:52,774 INFO L93 Difference]: Finished difference Result 193 states and 262 transitions. [2022-04-28 12:29:52,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 12:29:52,774 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 12:29:52,775 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:52,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:29:52,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 12:29:52,776 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:29:52,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 12:29:52,777 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 92 transitions. [2022-04-28 12:29:52,838 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-28 12:29:52,841 INFO L225 Difference]: With dead ends: 193 [2022-04-28 12:29:52,841 INFO L226 Difference]: Without dead ends: 191 [2022-04-28 12:29:52,842 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 12:29:52,842 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 57 mSDsluCounter, 225 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:52,842 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [61 Valid, 270 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:29:52,842 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-04-28 12:29:53,156 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 190. [2022-04-28 12:29:53,157 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:53,157 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 12:29:53,157 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 12:29:53,158 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 12:29:53,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:53,161 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 12:29:53,161 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 12:29:53,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:53,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:53,162 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 12:29:53,165 INFO L87 Difference]: Start difference. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 12:29:53,168 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:53,168 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 12:29:53,168 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 12:29:53,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:53,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:53,169 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:53,169 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:53,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 12:29:53,172 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 258 transitions. [2022-04-28 12:29:53,173 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 258 transitions. Word has length 39 [2022-04-28 12:29:53,173 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:53,173 INFO L495 AbstractCegarLoop]: Abstraction has 190 states and 258 transitions. [2022-04-28 12:29:53,173 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:29:53,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 258 transitions. [2022-04-28 12:29:53,386 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:53,386 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 258 transitions. [2022-04-28 12:29:53,387 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 12:29:53,387 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:53,387 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-28 12:29:53,403 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:53,591 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 12:29:53,591 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:53,592 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:53,592 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-28 12:29:53,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:53,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1175891694] [2022-04-28 12:29:53,592 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:53,592 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 2 times [2022-04-28 12:29:53,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:53,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [49570937] [2022-04-28 12:29:53,592 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:53,593 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:53,608 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:53,609 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [81386558] [2022-04-28 12:29:53,609 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:53,609 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:53,609 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:53,620 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:53,621 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 12:29:53,660 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:53,660 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:53,661 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 12:29:53,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:53,671 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:54,090 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 12:29:54,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#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; {8724#true} is VALID [2022-04-28 12:29:54,090 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 12:29:54,090 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 12:29:54,090 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 12:29:54,090 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#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; {8724#true} is VALID [2022-04-28 12:29:54,090 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 12:29:54,091 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:29:54,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:54,091 INFO L290 TraceCheckUtils]: 9: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:54,091 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8724#true} #94#return; {8761#(<= 1 main_~x~0)} is VALID [2022-04-28 12:29:54,092 INFO L272 TraceCheckUtils]: 11: Hoare triple {8761#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 12:29:54,092 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:29:54,092 INFO L290 TraceCheckUtils]: 13: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:54,092 INFO L290 TraceCheckUtils]: 14: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:29:54,093 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8761#(<= 1 main_~x~0)} #96#return; {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,093 INFO L290 TraceCheckUtils]: 16: Hoare triple {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,095 INFO L290 TraceCheckUtils]: 17: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= 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; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,096 INFO L290 TraceCheckUtils]: 18: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,096 INFO L290 TraceCheckUtils]: 19: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= 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; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= 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; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,097 INFO L290 TraceCheckUtils]: 21: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,097 INFO L290 TraceCheckUtils]: 22: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:29:54,098 INFO L290 TraceCheckUtils]: 23: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= 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; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,098 INFO L290 TraceCheckUtils]: 24: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,099 INFO L290 TraceCheckUtils]: 25: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,099 INFO L290 TraceCheckUtils]: 26: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~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; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,100 INFO L290 TraceCheckUtils]: 27: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,100 INFO L290 TraceCheckUtils]: 28: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 50);havoc #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,116 INFO L290 TraceCheckUtils]: 29: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~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; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,117 INFO L290 TraceCheckUtils]: 30: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,117 INFO L290 TraceCheckUtils]: 31: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post8 < 50);havoc #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,117 INFO L272 TraceCheckUtils]: 32: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-28 12:29:54,117 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 12:29:54,117 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 12:29:54,117 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 12:29:54,118 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #98#return; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 12:29:54,119 INFO L272 TraceCheckUtils]: 37: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:54,119 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:54,119 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 12:29:54,120 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 12:29:54,120 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-28 12:29:54,120 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:29:54,424 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 12:29:54,424 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 12:29:54,424 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:54,425 INFO L272 TraceCheckUtils]: 37: Hoare triple {8867#(= 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)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:54,426 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,426 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 12:29:54,426 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 12:29:54,426 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 12:29:54,426 INFO L272 TraceCheckUtils]: 32: Hoare triple {8867#(= 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)); {8724#true} is VALID [2022-04-28 12:29:54,427 INFO L290 TraceCheckUtils]: 31: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,427 INFO L290 TraceCheckUtils]: 30: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,427 INFO L290 TraceCheckUtils]: 29: Hoare triple {8867#(= 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,428 INFO L290 TraceCheckUtils]: 28: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,428 INFO L290 TraceCheckUtils]: 27: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,428 INFO L290 TraceCheckUtils]: 26: Hoare triple {8867#(= 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,429 INFO L290 TraceCheckUtils]: 25: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:54,429 INFO L290 TraceCheckUtils]: 24: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:29:56,431 WARN L290 TraceCheckUtils]: 23: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 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; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 12:29:56,432 INFO L290 TraceCheckUtils]: 22: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 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); {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 12:29:56,433 INFO L290 TraceCheckUtils]: 21: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 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 < 50);havoc #t~post7; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 12:29:56,433 INFO L290 TraceCheckUtils]: 20: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 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; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 12:29:56,434 INFO L290 TraceCheckUtils]: 19: Hoare triple {8923#(= 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; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 12:29:56,434 INFO L290 TraceCheckUtils]: 18: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:56,435 INFO L290 TraceCheckUtils]: 17: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:56,435 INFO L290 TraceCheckUtils]: 16: Hoare triple {8724#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:29:56,435 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8724#true} {8724#true} #96#return; {8724#true} is VALID [2022-04-28 12:29:56,435 INFO L290 TraceCheckUtils]: 14: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 12:29:56,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L272 TraceCheckUtils]: 11: Hoare triple {8724#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8724#true} {8724#true} #94#return; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 9: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#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; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#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; {8724#true} is VALID [2022-04-28 12:29:56,436 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 12:29:56,437 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-28 12:29:56,437 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:56,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [49570937] [2022-04-28 12:29:56,437 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:56,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [81386558] [2022-04-28 12:29:56,437 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [81386558] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:29:56,437 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:29:56,437 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 12:29:56,437 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:56,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1175891694] [2022-04-28 12:29:56,438 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1175891694] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:56,438 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:56,438 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 12:29:56,438 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [740912421] [2022-04-28 12:29:56,438 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:56,438 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 12:29:56,438 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:56,438 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 12:29:56,481 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-28 12:29:56,481 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 12:29:56,481 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:56,482 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 12:29:56,482 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:29:56,482 INFO L87 Difference]: Start difference. First operand 190 states and 258 transitions. Second operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 12:29:57,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:57,555 INFO L93 Difference]: Finished difference Result 199 states and 266 transitions. [2022-04-28 12:29:57,555 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:29:57,555 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 12:29:57,555 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:57,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 12:29:57,576 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 12:29:57,576 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 12:29:57,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 12:29:57,580 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-28 12:29:57,644 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:57,647 INFO L225 Difference]: With dead ends: 199 [2022-04-28 12:29:57,647 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 12:29:57,648 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-28 12:29:57,648 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 104 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 248 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 278 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 248 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:57,648 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [116 Valid, 310 Invalid, 278 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 248 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:29:57,649 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 12:29:57,865 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-28 12:29:57,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:57,866 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 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-28 12:29:57,866 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 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-28 12:29:57,866 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 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-28 12:29:57,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:57,870 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 12:29:57,870 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 12:29:57,870 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:57,870 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:57,871 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 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 197 states. [2022-04-28 12:29:57,871 INFO L87 Difference]: Start difference. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 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 197 states. [2022-04-28 12:29:57,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:57,875 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 12:29:57,875 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 12:29:57,876 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:57,876 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:57,876 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:57,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:57,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 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-28 12:29:57,880 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 261 transitions. [2022-04-28 12:29:57,880 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 261 transitions. Word has length 41 [2022-04-28 12:29:57,880 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:57,881 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 261 transitions. [2022-04-28 12:29:57,881 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 12:29:57,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 261 transitions. [2022-04-28 12:29:58,154 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:58,154 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 261 transitions. [2022-04-28 12:29:58,154 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-28 12:29:58,154 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:29:58,155 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-28 12:29:58,177 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 12:29:58,355 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-04-28 12:29:58,355 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:29:58,355 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:29:58,356 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-28 12:29:58,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:58,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1605255147] [2022-04-28 12:29:58,356 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:29:58,356 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 2 times [2022-04-28 12:29:58,356 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:29:58,356 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1893494744] [2022-04-28 12:29:58,356 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:29:58,356 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:29:58,366 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:29:58,366 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1973340696] [2022-04-28 12:29:58,367 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:29:58,367 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:29:58,367 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:29:58,373 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:29:58,374 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 12:29:58,410 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:29:58,410 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:29:58,411 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 12:29:58,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:29:58,419 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:29:58,546 INFO L272 TraceCheckUtils]: 0: Hoare triple {10169#true} call ULTIMATE.init(); {10169#true} is VALID [2022-04-28 12:29:58,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {10169#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; {10169#true} is VALID [2022-04-28 12:29:58,546 INFO L290 TraceCheckUtils]: 2: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 12:29:58,546 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10169#true} {10169#true} #108#return; {10169#true} is VALID [2022-04-28 12:29:58,546 INFO L272 TraceCheckUtils]: 4: Hoare triple {10169#true} call #t~ret9 := main(); {10169#true} is VALID [2022-04-28 12:29:58,546 INFO L290 TraceCheckUtils]: 5: Hoare triple {10169#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; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L272 TraceCheckUtils]: 6: Hoare triple {10169#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 7: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 8: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 9: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10169#true} {10169#true} #94#return; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L272 TraceCheckUtils]: 11: Hoare triple {10169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 12: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 13: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 14: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10169#true} {10169#true} #96#return; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 16: Hoare triple {10169#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 17: Hoare triple {10169#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 18: Hoare triple {10169#true} assume !!(#t~post6 < 50);havoc #t~post6; {10169#true} is VALID [2022-04-28 12:29:58,547 INFO L290 TraceCheckUtils]: 19: Hoare triple {10169#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10169#true} is VALID [2022-04-28 12:29:58,548 INFO L290 TraceCheckUtils]: 20: Hoare triple {10169#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10169#true} is VALID [2022-04-28 12:29:58,548 INFO L290 TraceCheckUtils]: 21: Hoare triple {10169#true} assume !!(#t~post7 < 50);havoc #t~post7; {10169#true} is VALID [2022-04-28 12:29:58,548 INFO L290 TraceCheckUtils]: 22: Hoare triple {10169#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 12:29:58,548 INFO L290 TraceCheckUtils]: 23: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 12:29:58,549 INFO L290 TraceCheckUtils]: 24: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 12:29:58,549 INFO L272 TraceCheckUtils]: 25: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-28 12:29:58,549 INFO L290 TraceCheckUtils]: 26: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 12:29:58,549 INFO L290 TraceCheckUtils]: 27: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 12:29:58,549 INFO L290 TraceCheckUtils]: 28: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 12:29:58,550 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 12:29:58,550 INFO L272 TraceCheckUtils]: 30: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-28 12:29:58,550 INFO L290 TraceCheckUtils]: 31: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 12:29:58,550 INFO L290 TraceCheckUtils]: 32: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 12:29:58,550 INFO L290 TraceCheckUtils]: 33: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 12:29:58,551 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 12:29:58,551 INFO L272 TraceCheckUtils]: 35: Hoare triple {10240#(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)); {10169#true} is VALID [2022-04-28 12:29:58,551 INFO L290 TraceCheckUtils]: 36: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 12:29:58,551 INFO L290 TraceCheckUtils]: 37: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 12:29:58,551 INFO L290 TraceCheckUtils]: 38: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 12:29:58,552 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 12:29:58,552 INFO L272 TraceCheckUtils]: 40: Hoare triple {10240#(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)); {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:29:58,553 INFO L290 TraceCheckUtils]: 41: Hoare triple {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:29:58,553 INFO L290 TraceCheckUtils]: 42: Hoare triple {10299#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10170#false} is VALID [2022-04-28 12:29:58,553 INFO L290 TraceCheckUtils]: 43: Hoare triple {10170#false} assume !false; {10170#false} is VALID [2022-04-28 12:29:58,553 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 12:29:58,553 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:29:58,553 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:29:58,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1893494744] [2022-04-28 12:29:58,554 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:29:58,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1973340696] [2022-04-28 12:29:58,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1973340696] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:58,554 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:58,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:29:58,554 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:29:58,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1605255147] [2022-04-28 12:29:58,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1605255147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:29:58,554 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:29:58,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:29:58,554 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1967231390] [2022-04-28 12:29:58,554 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:29:58,555 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-28 12:29:58,555 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:29:58,555 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-28 12:29:58,580 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:29:58,580 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:29:58,580 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:29:58,581 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:29:58,581 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:29:58,581 INFO L87 Difference]: Start difference. First operand 194 states and 261 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-28 12:29:59,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:59,254 INFO L93 Difference]: Finished difference Result 261 states and 367 transitions. [2022-04-28 12:29:59,266 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:29:59,267 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-28 12:29:59,267 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:29:59,267 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-28 12:29:59,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 12:29:59,268 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-28 12:29:59,268 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 12:29:59,268 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 12:29:59,310 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-28 12:29:59,317 INFO L225 Difference]: With dead ends: 261 [2022-04-28 12:29:59,317 INFO L226 Difference]: Without dead ends: 259 [2022-04-28 12:29:59,318 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-28 12:29:59,318 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:29:59,319 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 163 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:29:59,320 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-28 12:29:59,754 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 228. [2022-04-28 12:29:59,754 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:29:59,755 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 12:29:59,755 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 12:29:59,767 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 12:29:59,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:59,773 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 12:29:59,773 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 12:29:59,773 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:59,773 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:59,774 INFO L74 IsIncluded]: Start isIncluded. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 12:29:59,774 INFO L87 Difference]: Start difference. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 12:29:59,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:29:59,780 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 12:29:59,780 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 12:29:59,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:29:59,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:29:59,780 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:29:59,780 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:29:59,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 12:29:59,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 318 transitions. [2022-04-28 12:29:59,786 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 318 transitions. Word has length 44 [2022-04-28 12:29:59,786 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:29:59,786 INFO L495 AbstractCegarLoop]: Abstraction has 228 states and 318 transitions. [2022-04-28 12:29:59,786 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-28 12:29:59,786 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 228 states and 318 transitions. [2022-04-28 12:30:00,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 318 edges. 318 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:00,126 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 318 transitions. [2022-04-28 12:30:00,127 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 12:30:00,127 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:00,127 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-28 12:30:00,145 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Ended with exit code 0 [2022-04-28 12:30:00,327 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-28 12:30:00,328 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:00,328 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:00,328 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 1 times [2022-04-28 12:30:00,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:00,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [199585634] [2022-04-28 12:30:00,328 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:00,328 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 2 times [2022-04-28 12:30:00,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:00,329 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2132693698] [2022-04-28 12:30:00,329 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:00,329 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:00,339 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:00,339 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1820040432] [2022-04-28 12:30:00,339 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:00,339 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:00,339 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:00,340 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:00,341 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-28 12:30:00,379 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:00,379 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:00,380 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 12:30:00,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:00,389 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:00,562 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 12:30:00,563 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#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; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,563 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11811#(<= ~counter~0 0)} {11803#true} #108#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,563 INFO L272 TraceCheckUtils]: 4: Hoare triple {11811#(<= ~counter~0 0)} call #t~ret9 := main(); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,564 INFO L290 TraceCheckUtils]: 5: Hoare triple {11811#(<= ~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; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,564 INFO L272 TraceCheckUtils]: 6: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,564 INFO L290 TraceCheckUtils]: 7: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,565 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #94#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,566 INFO L272 TraceCheckUtils]: 11: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,566 INFO L290 TraceCheckUtils]: 14: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #96#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,567 INFO L290 TraceCheckUtils]: 16: Hoare triple {11811#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:00,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {11811#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:00,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {11860#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:00,568 INFO L290 TraceCheckUtils]: 19: Hoare triple {11860#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:00,568 INFO L290 TraceCheckUtils]: 20: Hoare triple {11860#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:00,569 INFO L290 TraceCheckUtils]: 21: Hoare triple {11870#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:00,569 INFO L290 TraceCheckUtils]: 22: Hoare triple {11870#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {11870#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:00,569 INFO L290 TraceCheckUtils]: 23: Hoare triple {11870#(<= ~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; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:00,570 INFO L290 TraceCheckUtils]: 24: Hoare triple {11870#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:00,570 INFO L290 TraceCheckUtils]: 25: Hoare triple {11883#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:00,570 INFO L290 TraceCheckUtils]: 26: Hoare triple {11883#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:00,570 INFO L290 TraceCheckUtils]: 27: Hoare triple {11883#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:00,571 INFO L290 TraceCheckUtils]: 28: Hoare triple {11893#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:00,571 INFO L290 TraceCheckUtils]: 29: Hoare triple {11893#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:00,571 INFO L290 TraceCheckUtils]: 30: Hoare triple {11893#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11903#(<= |main_#t~post8| 4)} is VALID [2022-04-28 12:30:00,571 INFO L290 TraceCheckUtils]: 31: Hoare triple {11903#(<= |main_#t~post8| 4)} assume !(#t~post8 < 50);havoc #t~post8; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 50);havoc #t~post7; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#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; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 50);havoc #t~post6; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#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)); {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 12:30:00,572 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:30:00,572 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#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)); {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 50);havoc #t~post6; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#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; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 50);havoc #t~post7; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 12:30:00,818 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 12:30:00,819 INFO L290 TraceCheckUtils]: 31: Hoare triple {11967#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {11804#false} is VALID [2022-04-28 12:30:00,819 INFO L290 TraceCheckUtils]: 30: Hoare triple {11971#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11967#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:30:00,819 INFO L290 TraceCheckUtils]: 29: Hoare triple {11971#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11971#(< ~counter~0 50)} is VALID [2022-04-28 12:30:00,819 INFO L290 TraceCheckUtils]: 28: Hoare triple {11971#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {11971#(< ~counter~0 50)} is VALID [2022-04-28 12:30:00,820 INFO L290 TraceCheckUtils]: 27: Hoare triple {11981#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11971#(< ~counter~0 50)} is VALID [2022-04-28 12:30:00,820 INFO L290 TraceCheckUtils]: 26: Hoare triple {11981#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11981#(< ~counter~0 49)} is VALID [2022-04-28 12:30:00,822 INFO L290 TraceCheckUtils]: 25: Hoare triple {11981#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {11981#(< ~counter~0 49)} is VALID [2022-04-28 12:30:00,823 INFO L290 TraceCheckUtils]: 24: Hoare triple {11991#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11981#(< ~counter~0 49)} is VALID [2022-04-28 12:30:00,823 INFO L290 TraceCheckUtils]: 23: Hoare triple {11991#(< ~counter~0 48)} ~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; {11991#(< ~counter~0 48)} is VALID [2022-04-28 12:30:00,823 INFO L290 TraceCheckUtils]: 22: Hoare triple {11991#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {11991#(< ~counter~0 48)} is VALID [2022-04-28 12:30:00,824 INFO L290 TraceCheckUtils]: 21: Hoare triple {11991#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {11991#(< ~counter~0 48)} is VALID [2022-04-28 12:30:00,824 INFO L290 TraceCheckUtils]: 20: Hoare triple {12004#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11991#(< ~counter~0 48)} is VALID [2022-04-28 12:30:00,824 INFO L290 TraceCheckUtils]: 19: Hoare triple {12004#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12004#(< ~counter~0 47)} is VALID [2022-04-28 12:30:00,825 INFO L290 TraceCheckUtils]: 18: Hoare triple {12004#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {12004#(< ~counter~0 47)} is VALID [2022-04-28 12:30:00,825 INFO L290 TraceCheckUtils]: 17: Hoare triple {12014#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12004#(< ~counter~0 47)} is VALID [2022-04-28 12:30:00,825 INFO L290 TraceCheckUtils]: 16: Hoare triple {12014#(< ~counter~0 46)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,826 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11803#true} {12014#(< ~counter~0 46)} #96#return; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,826 INFO L290 TraceCheckUtils]: 14: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 12:30:00,826 INFO L290 TraceCheckUtils]: 13: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 12:30:00,826 INFO L290 TraceCheckUtils]: 12: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 12:30:00,826 INFO L272 TraceCheckUtils]: 11: Hoare triple {12014#(< ~counter~0 46)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 12:30:00,826 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11803#true} {12014#(< ~counter~0 46)} #94#return; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,826 INFO L290 TraceCheckUtils]: 9: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 12:30:00,826 INFO L290 TraceCheckUtils]: 8: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 12:30:00,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 12:30:00,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {12014#(< ~counter~0 46)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 12:30:00,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {12014#(< ~counter~0 46)} 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; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {12014#(< ~counter~0 46)} call #t~ret9 := main(); {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,827 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12014#(< ~counter~0 46)} {11803#true} #108#return; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,828 INFO L290 TraceCheckUtils]: 2: Hoare triple {12014#(< ~counter~0 46)} assume true; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,828 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#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; {12014#(< ~counter~0 46)} is VALID [2022-04-28 12:30:00,828 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 12:30:00,828 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 12:30:00,829 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:00,829 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2132693698] [2022-04-28 12:30:00,829 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:00,829 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1820040432] [2022-04-28 12:30:00,829 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1820040432] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:00,829 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:00,829 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 12:30:00,829 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:00,829 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [199585634] [2022-04-28 12:30:00,829 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [199585634] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:00,829 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:00,829 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:30:00,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [103221149] [2022-04-28 12:30:00,829 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:00,830 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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 42 [2022-04-28 12:30:00,830 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:00,830 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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-28 12:30:00,855 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:00,855 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:30:00,855 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:00,856 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:30:00,856 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:30:00,856 INFO L87 Difference]: Start difference. First operand 228 states and 318 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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-28 12:30:01,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:01,578 INFO L93 Difference]: Finished difference Result 429 states and 607 transitions. [2022-04-28 12:30:01,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 12:30:01,578 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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 42 [2022-04-28 12:30:01,578 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:01,578 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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-28 12:30:01,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 12:30:01,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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-28 12:30:01,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 12:30:01,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 132 transitions. [2022-04-28 12:30:01,673 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:01,677 INFO L225 Difference]: With dead ends: 429 [2022-04-28 12:30:01,677 INFO L226 Difference]: Without dead ends: 264 [2022-04-28 12:30:01,678 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:30:01,678 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 52 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:01,678 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 201 Invalid, 68 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:30:01,679 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2022-04-28 12:30:02,178 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 258. [2022-04-28 12:30:02,178 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:02,178 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 12:30:02,179 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 12:30:02,179 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 12:30:02,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:02,184 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 12:30:02,184 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 12:30:02,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:02,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:02,185 INFO L74 IsIncluded]: Start isIncluded. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 12:30:02,186 INFO L87 Difference]: Start difference. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 12:30:02,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:02,191 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 12:30:02,191 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 12:30:02,191 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:02,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:02,191 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:02,191 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:02,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 12:30:02,197 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 351 transitions. [2022-04-28 12:30:02,197 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 351 transitions. Word has length 42 [2022-04-28 12:30:02,197 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:02,197 INFO L495 AbstractCegarLoop]: Abstraction has 258 states and 351 transitions. [2022-04-28 12:30:02,198 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 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-28 12:30:02,198 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 258 states and 351 transitions. [2022-04-28 12:30:02,556 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 351 edges. 351 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:02,557 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 351 transitions. [2022-04-28 12:30:02,557 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 12:30:02,557 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:02,557 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:30:02,573 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-28 12:30:02,757 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-28 12:30:02,758 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:02,758 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:02,758 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 1 times [2022-04-28 12:30:02,758 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:02,758 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2109762691] [2022-04-28 12:30:02,758 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:02,758 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 2 times [2022-04-28 12:30:02,758 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:02,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1208876981] [2022-04-28 12:30:02,759 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:02,759 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:02,768 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:02,768 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [237974158] [2022-04-28 12:30:02,768 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:02,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:02,769 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:02,769 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:02,770 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-28 12:30:02,809 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:02,809 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:02,809 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 12:30:02,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:02,818 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:05,853 INFO L272 TraceCheckUtils]: 0: Hoare triple {13974#true} call ULTIMATE.init(); {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {13974#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; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13974#true} {13974#true} #108#return; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L272 TraceCheckUtils]: 4: Hoare triple {13974#true} call #t~ret9 := main(); {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L290 TraceCheckUtils]: 5: Hoare triple {13974#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; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L272 TraceCheckUtils]: 6: Hoare triple {13974#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L290 TraceCheckUtils]: 7: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L290 TraceCheckUtils]: 8: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L290 TraceCheckUtils]: 9: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13974#true} {13974#true} #94#return; {13974#true} is VALID [2022-04-28 12:30:05,854 INFO L272 TraceCheckUtils]: 11: Hoare triple {13974#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 12: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 13: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 14: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13974#true} {13974#true} #96#return; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 16: Hoare triple {13974#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 17: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 18: Hoare triple {13974#true} assume !!(#t~post6 < 50);havoc #t~post6; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 19: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 20: Hoare triple {13974#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 21: Hoare triple {13974#true} assume !!(#t~post7 < 50);havoc #t~post7; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 22: Hoare triple {13974#true} assume !(~c~0 >= ~b~0); {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 23: Hoare triple {13974#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; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 24: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 12:30:05,855 INFO L290 TraceCheckUtils]: 25: Hoare triple {13974#true} assume !!(#t~post6 < 50);havoc #t~post6; {13974#true} is VALID [2022-04-28 12:30:05,856 INFO L290 TraceCheckUtils]: 26: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,856 INFO L290 TraceCheckUtils]: 27: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,857 INFO L290 TraceCheckUtils]: 28: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,857 INFO L290 TraceCheckUtils]: 29: Hoare triple {14057#(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; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,857 INFO L290 TraceCheckUtils]: 30: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,858 INFO L290 TraceCheckUtils]: 31: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,858 INFO L272 TraceCheckUtils]: 32: Hoare triple {14057#(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)); {13974#true} is VALID [2022-04-28 12:30:05,858 INFO L290 TraceCheckUtils]: 33: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 12:30:05,858 INFO L290 TraceCheckUtils]: 34: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 12:30:05,858 INFO L290 TraceCheckUtils]: 35: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 12:30:05,859 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,859 INFO L272 TraceCheckUtils]: 37: Hoare triple {14057#(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)); {13974#true} is VALID [2022-04-28 12:30:05,859 INFO L290 TraceCheckUtils]: 38: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 12:30:05,859 INFO L290 TraceCheckUtils]: 39: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 12:30:05,859 INFO L290 TraceCheckUtils]: 40: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 12:30:05,860 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:30:05,860 INFO L272 TraceCheckUtils]: 42: Hoare triple {14057#(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)); {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:30:05,861 INFO L290 TraceCheckUtils]: 43: Hoare triple {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:30:05,861 INFO L290 TraceCheckUtils]: 44: Hoare triple {14110#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13975#false} is VALID [2022-04-28 12:30:05,861 INFO L290 TraceCheckUtils]: 45: Hoare triple {13975#false} assume !false; {13975#false} is VALID [2022-04-28 12:30:05,861 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-28 12:30:05,861 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:30:05,861 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:05,861 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1208876981] [2022-04-28 12:30:05,861 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:05,862 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [237974158] [2022-04-28 12:30:05,862 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [237974158] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:05,862 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:05,862 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:30:05,862 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:05,862 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2109762691] [2022-04-28 12:30:05,863 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2109762691] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:05,865 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:05,865 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:30:05,865 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1660280943] [2022-04-28 12:30:05,865 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:05,866 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 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 46 [2022-04-28 12:30:05,866 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:05,866 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:30:05,891 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-28 12:30:05,891 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:30:05,891 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:05,892 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:30:05,892 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:30:05,892 INFO L87 Difference]: Start difference. First operand 258 states and 351 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:30:06,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:06,727 INFO L93 Difference]: Finished difference Result 332 states and 473 transitions. [2022-04-28 12:30:06,727 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:30:06,727 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 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 46 [2022-04-28 12:30:06,728 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:06,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:30:06,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 12:30:06,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:30:06,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 12:30:06,729 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 12:30:06,777 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-28 12:30:06,783 INFO L225 Difference]: With dead ends: 332 [2022-04-28 12:30:06,783 INFO L226 Difference]: Without dead ends: 330 [2022-04-28 12:30:06,783 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 12:30:06,783 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 153 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-28 12:30:06,783 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 153 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:30:06,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 330 states. [2022-04-28 12:30:07,469 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 330 to 321. [2022-04-28 12:30:07,469 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:07,469 INFO L82 GeneralOperation]: Start isEquivalent. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:07,470 INFO L74 IsIncluded]: Start isIncluded. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:07,470 INFO L87 Difference]: Start difference. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:07,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:07,478 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 12:30:07,478 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 12:30:07,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:07,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:07,479 INFO L74 IsIncluded]: Start isIncluded. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 12:30:07,479 INFO L87 Difference]: Start difference. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 12:30:07,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:07,486 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 12:30:07,486 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 12:30:07,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:07,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:07,487 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:07,487 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:07,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:07,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 321 states to 321 states and 462 transitions. [2022-04-28 12:30:07,496 INFO L78 Accepts]: Start accepts. Automaton has 321 states and 462 transitions. Word has length 46 [2022-04-28 12:30:07,496 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:07,496 INFO L495 AbstractCegarLoop]: Abstraction has 321 states and 462 transitions. [2022-04-28 12:30:07,496 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:30:07,496 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 321 states and 462 transitions. [2022-04-28 12:30:07,981 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 462 edges. 462 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:07,981 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 462 transitions. [2022-04-28 12:30:07,982 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-28 12:30:07,982 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:07,982 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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, 1] [2022-04-28 12:30:07,997 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-28 12:30:08,195 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:08,195 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:08,196 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:08,196 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 1 times [2022-04-28 12:30:08,196 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:08,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [902903228] [2022-04-28 12:30:08,196 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:08,196 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 2 times [2022-04-28 12:30:08,196 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:08,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [744982721] [2022-04-28 12:30:08,196 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:08,196 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:08,209 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:08,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1097372685] [2022-04-28 12:30:08,214 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:08,214 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:08,214 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:08,215 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:08,216 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-28 12:30:08,266 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:08,266 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:08,267 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 12:30:08,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:08,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:08,585 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 12:30:08,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#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; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,586 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16092#(<= ~counter~0 0)} {16084#true} #108#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,586 INFO L272 TraceCheckUtils]: 4: Hoare triple {16092#(<= ~counter~0 0)} call #t~ret9 := main(); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,587 INFO L290 TraceCheckUtils]: 5: Hoare triple {16092#(<= ~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; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,587 INFO L272 TraceCheckUtils]: 6: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,587 INFO L290 TraceCheckUtils]: 7: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,587 INFO L290 TraceCheckUtils]: 8: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,588 INFO L290 TraceCheckUtils]: 9: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,588 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #94#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,588 INFO L272 TraceCheckUtils]: 11: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,588 INFO L290 TraceCheckUtils]: 12: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,589 INFO L290 TraceCheckUtils]: 14: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,589 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #96#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,589 INFO L290 TraceCheckUtils]: 16: Hoare triple {16092#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:08,590 INFO L290 TraceCheckUtils]: 17: Hoare triple {16092#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:08,590 INFO L290 TraceCheckUtils]: 18: Hoare triple {16141#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:08,590 INFO L290 TraceCheckUtils]: 19: Hoare triple {16141#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:08,591 INFO L290 TraceCheckUtils]: 20: Hoare triple {16141#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:08,591 INFO L290 TraceCheckUtils]: 21: Hoare triple {16151#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:08,591 INFO L290 TraceCheckUtils]: 22: Hoare triple {16151#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:08,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {16151#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,592 INFO L290 TraceCheckUtils]: 24: Hoare triple {16161#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,592 INFO L272 TraceCheckUtils]: 25: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,592 INFO L290 TraceCheckUtils]: 26: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,593 INFO L290 TraceCheckUtils]: 27: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,593 INFO L290 TraceCheckUtils]: 28: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,593 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #98#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,594 INFO L272 TraceCheckUtils]: 30: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,594 INFO L290 TraceCheckUtils]: 31: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,594 INFO L290 TraceCheckUtils]: 32: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,594 INFO L290 TraceCheckUtils]: 33: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,595 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #100#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,595 INFO L272 TraceCheckUtils]: 35: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,595 INFO L290 TraceCheckUtils]: 36: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,596 INFO L290 TraceCheckUtils]: 37: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,596 INFO L290 TraceCheckUtils]: 38: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,596 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #102#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,596 INFO L272 TraceCheckUtils]: 40: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,597 INFO L290 TraceCheckUtils]: 41: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,597 INFO L290 TraceCheckUtils]: 42: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,597 INFO L290 TraceCheckUtils]: 43: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,597 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #104#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,598 INFO L290 TraceCheckUtils]: 45: Hoare triple {16161#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,598 INFO L290 TraceCheckUtils]: 46: Hoare triple {16161#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:08,598 INFO L290 TraceCheckUtils]: 47: Hoare triple {16161#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:08,599 INFO L290 TraceCheckUtils]: 48: Hoare triple {16234#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:08,599 INFO L290 TraceCheckUtils]: 49: Hoare triple {16234#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {16234#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:08,599 INFO L290 TraceCheckUtils]: 50: Hoare triple {16234#(<= ~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; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:08,599 INFO L290 TraceCheckUtils]: 51: Hoare triple {16234#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16247#(<= |main_#t~post6| 4)} is VALID [2022-04-28 12:30:08,600 INFO L290 TraceCheckUtils]: 52: Hoare triple {16247#(<= |main_#t~post6| 4)} assume !(#t~post6 < 50);havoc #t~post6; {16085#false} is VALID [2022-04-28 12:30:08,600 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#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)); {16085#false} is VALID [2022-04-28 12:30:08,600 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 12:30:08,600 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 12:30:08,600 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 12:30:08,600 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:08,600 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:08,860 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 12:30:08,860 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 12:30:08,860 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 12:30:08,860 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#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)); {16085#false} is VALID [2022-04-28 12:30:08,861 INFO L290 TraceCheckUtils]: 52: Hoare triple {16275#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {16085#false} is VALID [2022-04-28 12:30:08,861 INFO L290 TraceCheckUtils]: 51: Hoare triple {16279#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16275#(< |main_#t~post6| 50)} is VALID [2022-04-28 12:30:08,861 INFO L290 TraceCheckUtils]: 50: Hoare triple {16279#(< ~counter~0 50)} ~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; {16279#(< ~counter~0 50)} is VALID [2022-04-28 12:30:08,862 INFO L290 TraceCheckUtils]: 49: Hoare triple {16279#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {16279#(< ~counter~0 50)} is VALID [2022-04-28 12:30:08,862 INFO L290 TraceCheckUtils]: 48: Hoare triple {16279#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {16279#(< ~counter~0 50)} is VALID [2022-04-28 12:30:08,863 INFO L290 TraceCheckUtils]: 47: Hoare triple {16292#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16279#(< ~counter~0 50)} is VALID [2022-04-28 12:30:08,863 INFO L290 TraceCheckUtils]: 46: Hoare triple {16292#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,863 INFO L290 TraceCheckUtils]: 45: Hoare triple {16292#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,864 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #104#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,864 INFO L290 TraceCheckUtils]: 43: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 12:30:08,864 INFO L290 TraceCheckUtils]: 42: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 12:30:08,864 INFO L290 TraceCheckUtils]: 41: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 12:30:08,864 INFO L272 TraceCheckUtils]: 40: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 12:30:08,864 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #102#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,865 INFO L290 TraceCheckUtils]: 38: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 12:30:08,865 INFO L290 TraceCheckUtils]: 37: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 12:30:08,865 INFO L290 TraceCheckUtils]: 36: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 12:30:08,865 INFO L272 TraceCheckUtils]: 35: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 12:30:08,865 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #100#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,865 INFO L290 TraceCheckUtils]: 33: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 12:30:08,865 INFO L290 TraceCheckUtils]: 32: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 12:30:08,866 INFO L290 TraceCheckUtils]: 31: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 12:30:08,866 INFO L272 TraceCheckUtils]: 30: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 12:30:08,866 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16084#true} {16292#(< ~counter~0 49)} #98#return; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,866 INFO L290 TraceCheckUtils]: 28: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 12:30:08,866 INFO L290 TraceCheckUtils]: 27: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 12:30:08,866 INFO L290 TraceCheckUtils]: 26: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 12:30:08,866 INFO L272 TraceCheckUtils]: 25: Hoare triple {16292#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 12:30:08,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {16292#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {16365#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16292#(< ~counter~0 49)} is VALID [2022-04-28 12:30:08,867 INFO L290 TraceCheckUtils]: 22: Hoare triple {16365#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16365#(< ~counter~0 48)} is VALID [2022-04-28 12:30:08,868 INFO L290 TraceCheckUtils]: 21: Hoare triple {16365#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {16365#(< ~counter~0 48)} is VALID [2022-04-28 12:30:08,868 INFO L290 TraceCheckUtils]: 20: Hoare triple {16375#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16365#(< ~counter~0 48)} is VALID [2022-04-28 12:30:08,869 INFO L290 TraceCheckUtils]: 19: Hoare triple {16375#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16375#(< ~counter~0 47)} is VALID [2022-04-28 12:30:08,869 INFO L290 TraceCheckUtils]: 18: Hoare triple {16375#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {16375#(< ~counter~0 47)} is VALID [2022-04-28 12:30:08,869 INFO L290 TraceCheckUtils]: 17: Hoare triple {16385#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16375#(< ~counter~0 47)} is VALID [2022-04-28 12:30:08,870 INFO L290 TraceCheckUtils]: 16: Hoare triple {16385#(< ~counter~0 46)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,870 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16084#true} {16385#(< ~counter~0 46)} #96#return; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,870 INFO L290 TraceCheckUtils]: 14: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 12:30:08,870 INFO L290 TraceCheckUtils]: 13: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 12:30:08,870 INFO L290 TraceCheckUtils]: 12: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 12:30:08,870 INFO L272 TraceCheckUtils]: 11: Hoare triple {16385#(< ~counter~0 46)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 12:30:08,871 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16084#true} {16385#(< ~counter~0 46)} #94#return; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 12:30:08,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 12:30:08,871 INFO L290 TraceCheckUtils]: 7: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 12:30:08,871 INFO L272 TraceCheckUtils]: 6: Hoare triple {16385#(< ~counter~0 46)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 12:30:08,871 INFO L290 TraceCheckUtils]: 5: Hoare triple {16385#(< ~counter~0 46)} 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; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,872 INFO L272 TraceCheckUtils]: 4: Hoare triple {16385#(< ~counter~0 46)} call #t~ret9 := main(); {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,872 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16385#(< ~counter~0 46)} {16084#true} #108#return; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {16385#(< ~counter~0 46)} assume true; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,873 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#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; {16385#(< ~counter~0 46)} is VALID [2022-04-28 12:30:08,873 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 12:30:08,873 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:08,873 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:08,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [744982721] [2022-04-28 12:30:08,873 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:08,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1097372685] [2022-04-28 12:30:08,873 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1097372685] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:08,873 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:08,873 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 12:30:08,874 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:08,874 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [902903228] [2022-04-28 12:30:08,874 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [902903228] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:08,874 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:08,874 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:30:08,874 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1687122861] [2022-04-28 12:30:08,874 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:08,874 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 12:30:08,874 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:08,874 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:08,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:08,905 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:30:08,905 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:08,905 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:30:08,905 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:30:08,906 INFO L87 Difference]: Start difference. First operand 321 states and 462 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:09,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:09,791 INFO L93 Difference]: Finished difference Result 335 states and 475 transitions. [2022-04-28 12:30:09,791 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 12:30:09,791 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 12:30:09,791 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:09,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:09,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 12:30:09,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:09,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 12:30:09,793 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-28 12:30:09,864 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:09,870 INFO L225 Difference]: With dead ends: 335 [2022-04-28 12:30:09,870 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 12:30:09,870 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:30:09,870 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 46 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:09,871 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:30:09,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 12:30:10,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 324. [2022-04-28 12:30:10,484 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:10,485 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:10,485 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:10,486 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:10,493 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:10,493 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 12:30:10,493 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 12:30:10,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:10,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:10,495 INFO L74 IsIncluded]: Start isIncluded. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 12:30:10,495 INFO L87 Difference]: Start difference. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 12:30:10,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:10,502 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 12:30:10,502 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 12:30:10,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:10,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:10,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:10,503 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:10,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:30:10,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 324 states to 324 states and 465 transitions. [2022-04-28 12:30:10,511 INFO L78 Accepts]: Start accepts. Automaton has 324 states and 465 transitions. Word has length 57 [2022-04-28 12:30:10,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:10,512 INFO L495 AbstractCegarLoop]: Abstraction has 324 states and 465 transitions. [2022-04-28 12:30:10,512 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:10,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 324 states and 465 transitions. [2022-04-28 12:30:11,079 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 465 edges. 465 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:11,079 INFO L276 IsEmpty]: Start isEmpty. Operand 324 states and 465 transitions. [2022-04-28 12:30:11,079 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 12:30:11,080 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:11,080 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-28 12:30:11,107 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-28 12:30:11,280 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-28 12:30:11,280 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:11,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:11,280 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-28 12:30:11,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:11,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1720982070] [2022-04-28 12:30:11,281 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:11,281 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 2 times [2022-04-28 12:30:11,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:11,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2053209415] [2022-04-28 12:30:11,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:11,281 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:11,294 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:11,294 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1417443739] [2022-04-28 12:30:11,294 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:11,294 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:11,294 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:11,306 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:11,306 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-28 12:30:11,348 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:11,348 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:11,349 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 12:30:11,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:11,359 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:12,152 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 12:30:12,152 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#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; {18417#true} is VALID [2022-04-28 12:30:12,152 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:12,152 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#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; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:12,153 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 12:30:12,154 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,154 INFO L290 TraceCheckUtils]: 17: Hoare triple {18470#(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; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,154 INFO L290 TraceCheckUtils]: 18: Hoare triple {18470#(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 < 50);havoc #t~post6; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,155 INFO L290 TraceCheckUtils]: 19: Hoare triple {18470#(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; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,155 INFO L290 TraceCheckUtils]: 20: Hoare triple {18480#(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; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,156 INFO L290 TraceCheckUtils]: 21: Hoare triple {18480#(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 < 50);havoc #t~post7; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,156 INFO L290 TraceCheckUtils]: 22: Hoare triple {18480#(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; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,157 INFO L290 TraceCheckUtils]: 23: Hoare triple {18490#(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; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,157 INFO L290 TraceCheckUtils]: 24: Hoare triple {18490#(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 < 50);havoc #t~post8; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,157 INFO L272 TraceCheckUtils]: 25: Hoare triple {18490#(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)); {18417#true} is VALID [2022-04-28 12:30:12,157 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:30:12,158 INFO L290 TraceCheckUtils]: 27: Hoare triple {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:30:12,158 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:30:12,159 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18490#(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; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,159 INFO L272 TraceCheckUtils]: 30: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-28 12:30:12,159 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:12,159 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:12,159 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:12,160 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18514#(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; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,160 INFO L272 TraceCheckUtils]: 35: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-28 12:30:12,160 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:12,160 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:12,160 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:12,161 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18514#(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; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,161 INFO L272 TraceCheckUtils]: 40: Hoare triple {18514#(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)); {18417#true} is VALID [2022-04-28 12:30:12,161 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:12,161 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:12,162 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:12,162 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18514#(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; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,163 INFO L290 TraceCheckUtils]: 45: Hoare triple {18514#(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); {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:30:12,163 INFO L290 TraceCheckUtils]: 46: Hoare triple {18514#(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; {18566#(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-28 12:30:12,164 INFO L290 TraceCheckUtils]: 47: Hoare triple {18566#(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; {18566#(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-28 12:30:12,164 INFO L290 TraceCheckUtils]: 48: Hoare triple {18566#(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 < 50);havoc #t~post7; {18566#(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-28 12:30:12,164 INFO L290 TraceCheckUtils]: 49: Hoare triple {18566#(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); {18566#(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-28 12:30:12,165 INFO L290 TraceCheckUtils]: 50: Hoare triple {18566#(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; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:30:12,165 INFO L290 TraceCheckUtils]: 51: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:30:12,166 INFO L290 TraceCheckUtils]: 52: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:30:12,166 INFO L290 TraceCheckUtils]: 53: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18589#(and (= (+ 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) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:30:12,167 INFO L272 TraceCheckUtils]: 54: Hoare triple {18589#(and (= (+ 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) (= (+ main_~s~0 1) 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)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:30:12,167 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:30:12,168 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 12:30:12,168 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 12:30:12,168 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 12:30:12,168 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:25,503 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 12:30:25,504 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 12:30:25,504 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:30:25,505 INFO L272 TraceCheckUtils]: 54: Hoare triple {18613#(= (+ (* 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)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:30:25,505 INFO L290 TraceCheckUtils]: 53: Hoare triple {18617#(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); {18613#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:30:25,506 INFO L290 TraceCheckUtils]: 52: Hoare triple {18617#(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 < 50);havoc #t~post6; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:30:25,506 INFO L290 TraceCheckUtils]: 51: Hoare triple {18617#(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; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:30:25,568 INFO L290 TraceCheckUtils]: 50: Hoare triple {18627#(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; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:30:25,569 INFO L290 TraceCheckUtils]: 49: Hoare triple {18627#(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); {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,569 INFO L290 TraceCheckUtils]: 48: Hoare triple {18627#(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 < 50);havoc #t~post7; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,569 INFO L290 TraceCheckUtils]: 47: Hoare triple {18627#(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; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,604 INFO L290 TraceCheckUtils]: 46: Hoare triple {18640#(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; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,604 INFO L290 TraceCheckUtils]: 45: Hoare triple {18640#(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); {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,605 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18640#(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; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,605 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:25,605 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:25,605 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:25,605 INFO L272 TraceCheckUtils]: 40: Hoare triple {18640#(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)); {18417#true} is VALID [2022-04-28 12:30:25,606 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18640#(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; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,606 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:25,606 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:25,606 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:25,606 INFO L272 TraceCheckUtils]: 35: Hoare triple {18640#(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)); {18417#true} is VALID [2022-04-28 12:30:25,607 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18640#(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))))} #100#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,607 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:25,607 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:25,607 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:25,607 INFO L272 TraceCheckUtils]: 30: Hoare triple {18640#(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 ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 12:30:25,608 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18692#(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)))) (= (+ 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; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,609 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:30:25,609 INFO L290 TraceCheckUtils]: 27: Hoare triple {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:30:25,609 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:30:25,609 INFO L272 TraceCheckUtils]: 25: Hoare triple {18692#(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)))) (= (+ 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)); {18417#true} is VALID [2022-04-28 12:30:25,610 INFO L290 TraceCheckUtils]: 24: Hoare triple {18692#(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)))) (= (+ 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 < 50);havoc #t~post8; {18692#(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)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,611 INFO L290 TraceCheckUtils]: 23: Hoare triple {18692#(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)))) (= (+ 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; {18692#(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)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,611 INFO L290 TraceCheckUtils]: 22: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18692#(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)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:30:25,612 INFO L290 TraceCheckUtils]: 21: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post7 < 50);havoc #t~post7; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:30:25,612 INFO L290 TraceCheckUtils]: 20: Hoare triple {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:30:25,613 INFO L290 TraceCheckUtils]: 19: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18715#(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_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:30:25,613 INFO L290 TraceCheckUtils]: 18: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 50);havoc #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:30:25,614 INFO L290 TraceCheckUtils]: 17: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:30:25,614 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:30:25,615 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#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; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 12:30:25,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 12:30:25,616 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#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; {18417#true} is VALID [2022-04-28 12:30:25,616 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 12:30:25,616 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 12:30:25,616 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:25,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2053209415] [2022-04-28 12:30:25,616 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:25,616 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1417443739] [2022-04-28 12:30:25,616 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1417443739] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:25,616 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:25,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 12:30:25,617 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:25,617 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1720982070] [2022-04-28 12:30:25,617 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1720982070] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:25,617 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:25,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 12:30:25,617 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [410190106] [2022-04-28 12:30:25,617 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:25,617 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 12:30:25,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:25,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:25,657 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:25,657 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 12:30:25,657 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:25,657 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 12:30:25,657 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-04-28 12:30:25,657 INFO L87 Difference]: Start difference. First operand 324 states and 465 transitions. Second operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:27,955 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:27,956 INFO L93 Difference]: Finished difference Result 384 states and 559 transitions. [2022-04-28 12:30:27,956 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 12:30:27,956 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 12:30:27,956 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:27,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:27,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 12:30:27,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:27,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 12:30:27,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 149 transitions. [2022-04-28 12:30:28,137 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:28,144 INFO L225 Difference]: With dead ends: 384 [2022-04-28 12:30:28,144 INFO L226 Difference]: Without dead ends: 381 [2022-04-28 12:30:28,145 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 95 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=101, Invalid=499, Unknown=0, NotChecked=0, Total=600 [2022-04-28 12:30:28,145 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 66 mSDsluCounter, 342 mSDsCounter, 0 mSdLazyCounter, 541 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 586 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 541 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:28,145 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 399 Invalid, 586 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 541 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 12:30:28,146 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-28 12:30:28,869 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 377. [2022-04-28 12:30:28,869 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:28,870 INFO L82 GeneralOperation]: Start isEquivalent. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 12:30:28,870 INFO L74 IsIncluded]: Start isIncluded. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 12:30:28,871 INFO L87 Difference]: Start difference. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 12:30:28,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:28,882 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 12:30:28,882 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 12:30:28,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:28,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:28,883 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 12:30:28,884 INFO L87 Difference]: Start difference. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 12:30:28,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:28,892 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 12:30:28,892 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 12:30:28,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:28,893 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:28,893 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:28,893 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:28,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 12:30:28,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 551 transitions. [2022-04-28 12:30:28,905 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 551 transitions. Word has length 58 [2022-04-28 12:30:28,905 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:28,905 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 551 transitions. [2022-04-28 12:30:28,905 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:28,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 377 states and 551 transitions. [2022-04-28 12:30:29,552 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 551 edges. 551 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:29,552 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 551 transitions. [2022-04-28 12:30:29,553 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 12:30:29,553 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:29,553 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 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, 1, 1] [2022-04-28 12:30:29,571 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 12:30:29,753 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 12:30:29,753 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:29,754 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:29,754 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 1 times [2022-04-28 12:30:29,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:29,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1057285935] [2022-04-28 12:30:29,754 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:29,754 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 2 times [2022-04-28 12:30:29,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:29,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1477356825] [2022-04-28 12:30:29,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:29,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:29,772 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:29,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2130945157] [2022-04-28 12:30:29,772 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:29,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:29,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:29,773 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:29,775 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-28 12:30:29,829 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:29,829 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:29,830 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 12:30:29,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:29,855 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:30,077 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 12:30:30,077 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#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; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,078 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21085#(<= ~counter~0 0)} {21077#true} #108#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,078 INFO L272 TraceCheckUtils]: 4: Hoare triple {21085#(<= ~counter~0 0)} call #t~ret9 := main(); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,078 INFO L290 TraceCheckUtils]: 5: Hoare triple {21085#(<= ~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; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,079 INFO L272 TraceCheckUtils]: 6: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,079 INFO L290 TraceCheckUtils]: 7: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,079 INFO L290 TraceCheckUtils]: 8: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #94#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,080 INFO L272 TraceCheckUtils]: 11: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,080 INFO L290 TraceCheckUtils]: 12: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,080 INFO L290 TraceCheckUtils]: 13: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,080 INFO L290 TraceCheckUtils]: 14: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,081 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #96#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,081 INFO L290 TraceCheckUtils]: 16: Hoare triple {21085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:30,081 INFO L290 TraceCheckUtils]: 17: Hoare triple {21085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:30,081 INFO L290 TraceCheckUtils]: 18: Hoare triple {21134#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:30,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {21134#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:30,082 INFO L290 TraceCheckUtils]: 20: Hoare triple {21134#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:30,082 INFO L290 TraceCheckUtils]: 21: Hoare triple {21144#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:30,082 INFO L290 TraceCheckUtils]: 22: Hoare triple {21144#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {21144#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:30,083 INFO L290 TraceCheckUtils]: 23: Hoare triple {21144#(<= ~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; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:30,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {21144#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:30,108 INFO L290 TraceCheckUtils]: 25: Hoare triple {21157#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:30,108 INFO L290 TraceCheckUtils]: 26: Hoare triple {21157#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:30,108 INFO L290 TraceCheckUtils]: 27: Hoare triple {21157#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:30,109 INFO L290 TraceCheckUtils]: 28: Hoare triple {21167#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:30,109 INFO L290 TraceCheckUtils]: 29: Hoare triple {21167#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:30,110 INFO L290 TraceCheckUtils]: 30: Hoare triple {21167#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,110 INFO L290 TraceCheckUtils]: 31: Hoare triple {21177#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,111 INFO L272 TraceCheckUtils]: 32: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,111 INFO L290 TraceCheckUtils]: 33: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,111 INFO L290 TraceCheckUtils]: 34: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,112 INFO L290 TraceCheckUtils]: 35: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,112 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #98#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,113 INFO L272 TraceCheckUtils]: 37: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,114 INFO L290 TraceCheckUtils]: 39: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,114 INFO L290 TraceCheckUtils]: 40: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,114 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #100#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,115 INFO L272 TraceCheckUtils]: 42: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,115 INFO L290 TraceCheckUtils]: 43: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,116 INFO L290 TraceCheckUtils]: 44: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,116 INFO L290 TraceCheckUtils]: 45: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,117 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #102#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,118 INFO L272 TraceCheckUtils]: 47: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,118 INFO L290 TraceCheckUtils]: 48: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,118 INFO L290 TraceCheckUtils]: 49: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,119 INFO L290 TraceCheckUtils]: 50: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,119 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #104#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,119 INFO L290 TraceCheckUtils]: 52: Hoare triple {21177#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,120 INFO L290 TraceCheckUtils]: 53: Hoare triple {21177#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:30,120 INFO L290 TraceCheckUtils]: 54: Hoare triple {21177#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21250#(<= |main_#t~post7| 5)} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 55: Hoare triple {21250#(<= |main_#t~post7| 5)} assume !(#t~post7 < 50);havoc #t~post7; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#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; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 50);havoc #t~post6; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#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)); {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 12:30:30,121 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:30,121 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:30,479 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 12:30:30,479 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 12:30:30,479 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 12:30:30,479 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#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)); {21078#false} is VALID [2022-04-28 12:30:30,479 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 50);havoc #t~post6; {21078#false} is VALID [2022-04-28 12:30:30,480 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 12:30:30,480 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#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; {21078#false} is VALID [2022-04-28 12:30:30,480 INFO L290 TraceCheckUtils]: 55: Hoare triple {21296#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {21078#false} is VALID [2022-04-28 12:30:30,480 INFO L290 TraceCheckUtils]: 54: Hoare triple {21300#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21296#(< |main_#t~post7| 50)} is VALID [2022-04-28 12:30:30,481 INFO L290 TraceCheckUtils]: 53: Hoare triple {21300#(< ~counter~0 50)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,481 INFO L290 TraceCheckUtils]: 52: Hoare triple {21300#(< ~counter~0 50)} assume !(~c~0 >= 2 * ~v~0); {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,481 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #104#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,481 INFO L290 TraceCheckUtils]: 50: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 12:30:30,481 INFO L290 TraceCheckUtils]: 49: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 12:30:30,482 INFO L290 TraceCheckUtils]: 48: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 12:30:30,482 INFO L272 TraceCheckUtils]: 47: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 12:30:30,482 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #102#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,482 INFO L290 TraceCheckUtils]: 45: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 12:30:30,482 INFO L290 TraceCheckUtils]: 44: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 12:30:30,482 INFO L290 TraceCheckUtils]: 43: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 12:30:30,482 INFO L272 TraceCheckUtils]: 42: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 12:30:30,483 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #100#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,483 INFO L290 TraceCheckUtils]: 40: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 12:30:30,483 INFO L290 TraceCheckUtils]: 39: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 12:30:30,483 INFO L290 TraceCheckUtils]: 38: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 12:30:30,483 INFO L272 TraceCheckUtils]: 37: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 12:30:30,484 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21077#true} {21300#(< ~counter~0 50)} #98#return; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 12:30:30,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 12:30:30,484 INFO L290 TraceCheckUtils]: 33: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 12:30:30,484 INFO L272 TraceCheckUtils]: 32: Hoare triple {21300#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 12:30:30,484 INFO L290 TraceCheckUtils]: 31: Hoare triple {21300#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,485 INFO L290 TraceCheckUtils]: 30: Hoare triple {21373#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21300#(< ~counter~0 50)} is VALID [2022-04-28 12:30:30,485 INFO L290 TraceCheckUtils]: 29: Hoare triple {21373#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21373#(< ~counter~0 49)} is VALID [2022-04-28 12:30:30,486 INFO L290 TraceCheckUtils]: 28: Hoare triple {21373#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {21373#(< ~counter~0 49)} is VALID [2022-04-28 12:30:30,486 INFO L290 TraceCheckUtils]: 27: Hoare triple {21383#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21373#(< ~counter~0 49)} is VALID [2022-04-28 12:30:30,486 INFO L290 TraceCheckUtils]: 26: Hoare triple {21383#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21383#(< ~counter~0 48)} is VALID [2022-04-28 12:30:30,487 INFO L290 TraceCheckUtils]: 25: Hoare triple {21383#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {21383#(< ~counter~0 48)} is VALID [2022-04-28 12:30:30,487 INFO L290 TraceCheckUtils]: 24: Hoare triple {21393#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21383#(< ~counter~0 48)} is VALID [2022-04-28 12:30:30,487 INFO L290 TraceCheckUtils]: 23: Hoare triple {21393#(< ~counter~0 47)} ~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; {21393#(< ~counter~0 47)} is VALID [2022-04-28 12:30:30,488 INFO L290 TraceCheckUtils]: 22: Hoare triple {21393#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {21393#(< ~counter~0 47)} is VALID [2022-04-28 12:30:30,488 INFO L290 TraceCheckUtils]: 21: Hoare triple {21393#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {21393#(< ~counter~0 47)} is VALID [2022-04-28 12:30:30,488 INFO L290 TraceCheckUtils]: 20: Hoare triple {21406#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21393#(< ~counter~0 47)} is VALID [2022-04-28 12:30:30,489 INFO L290 TraceCheckUtils]: 19: Hoare triple {21406#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21406#(< ~counter~0 46)} is VALID [2022-04-28 12:30:30,489 INFO L290 TraceCheckUtils]: 18: Hoare triple {21406#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {21406#(< ~counter~0 46)} is VALID [2022-04-28 12:30:30,489 INFO L290 TraceCheckUtils]: 17: Hoare triple {21416#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21406#(< ~counter~0 46)} is VALID [2022-04-28 12:30:30,490 INFO L290 TraceCheckUtils]: 16: Hoare triple {21416#(< ~counter~0 45)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,490 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21077#true} {21416#(< ~counter~0 45)} #96#return; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,490 INFO L290 TraceCheckUtils]: 14: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 12:30:30,490 INFO L290 TraceCheckUtils]: 13: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 12:30:30,490 INFO L290 TraceCheckUtils]: 12: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 12:30:30,490 INFO L272 TraceCheckUtils]: 11: Hoare triple {21416#(< ~counter~0 45)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 12:30:30,491 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21077#true} {21416#(< ~counter~0 45)} #94#return; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,491 INFO L290 TraceCheckUtils]: 9: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 12:30:30,491 INFO L290 TraceCheckUtils]: 8: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 12:30:30,491 INFO L290 TraceCheckUtils]: 7: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 12:30:30,491 INFO L272 TraceCheckUtils]: 6: Hoare triple {21416#(< ~counter~0 45)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 12:30:30,491 INFO L290 TraceCheckUtils]: 5: Hoare triple {21416#(< ~counter~0 45)} 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; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,492 INFO L272 TraceCheckUtils]: 4: Hoare triple {21416#(< ~counter~0 45)} call #t~ret9 := main(); {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,492 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21416#(< ~counter~0 45)} {21077#true} #108#return; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {21416#(< ~counter~0 45)} assume true; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,493 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#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; {21416#(< ~counter~0 45)} is VALID [2022-04-28 12:30:30,493 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 12:30:30,493 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:30,493 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:30,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1477356825] [2022-04-28 12:30:30,493 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:30,493 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2130945157] [2022-04-28 12:30:30,493 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2130945157] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:30,493 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:30,494 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 12:30:30,494 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:30,494 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1057285935] [2022-04-28 12:30:30,494 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1057285935] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:30,494 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:30,494 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:30:30,494 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [31053245] [2022-04-28 12:30:30,494 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:30,496 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 12:30:30,497 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:30,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:30,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:30,532 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:30:30,532 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:30,532 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:30:30,532 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:30:30,532 INFO L87 Difference]: Start difference. First operand 377 states and 551 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:31,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:31,738 INFO L93 Difference]: Finished difference Result 604 states and 873 transitions. [2022-04-28 12:30:31,738 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 12:30:31,738 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 12:30:31,738 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:31,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:31,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 12:30:31,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:31,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 12:30:31,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 158 transitions. [2022-04-28 12:30:31,866 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:31,889 INFO L225 Difference]: With dead ends: 604 [2022-04-28 12:30:31,889 INFO L226 Difference]: Without dead ends: 440 [2022-04-28 12:30:31,890 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-28 12:30:31,890 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 57 mSDsluCounter, 181 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:31,890 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 236 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:30:31,891 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 440 states. [2022-04-28 12:30:32,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 440 to 426. [2022-04-28 12:30:32,892 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:32,893 INFO L82 GeneralOperation]: Start isEquivalent. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 12:30:32,893 INFO L74 IsIncluded]: Start isIncluded. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 12:30:32,893 INFO L87 Difference]: Start difference. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 12:30:32,906 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:32,906 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 12:30:32,906 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 12:30:32,907 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:32,907 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:32,908 INFO L74 IsIncluded]: Start isIncluded. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 12:30:32,908 INFO L87 Difference]: Start difference. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 12:30:32,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:32,921 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 12:30:32,921 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 12:30:32,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:32,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:32,922 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:32,922 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:32,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 12:30:32,936 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 426 states to 426 states and 598 transitions. [2022-04-28 12:30:32,936 INFO L78 Accepts]: Start accepts. Automaton has 426 states and 598 transitions. Word has length 63 [2022-04-28 12:30:32,937 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:32,937 INFO L495 AbstractCegarLoop]: Abstraction has 426 states and 598 transitions. [2022-04-28 12:30:32,937 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:32,937 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 426 states and 598 transitions. [2022-04-28 12:30:33,640 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 598 edges. 598 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:33,640 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 598 transitions. [2022-04-28 12:30:33,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 12:30:33,641 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:33,641 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-28 12:30:33,659 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-28 12:30:33,841 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-28 12:30:33,842 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:33,842 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:33,842 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 3 times [2022-04-28 12:30:33,842 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:33,842 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1100581387] [2022-04-28 12:30:33,842 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:33,842 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 4 times [2022-04-28 12:30:33,843 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:33,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1426550414] [2022-04-28 12:30:33,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:33,843 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:33,854 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:33,854 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [330593135] [2022-04-28 12:30:33,854 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:30:33,855 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:33,855 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:33,858 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:33,859 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-28 12:30:33,904 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:30:33,904 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:33,905 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 12:30:33,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:33,919 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:34,273 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 12:30:34,273 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#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; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,274 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24424#(<= ~counter~0 0)} {24416#true} #108#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,274 INFO L272 TraceCheckUtils]: 4: Hoare triple {24424#(<= ~counter~0 0)} call #t~ret9 := main(); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,275 INFO L290 TraceCheckUtils]: 5: Hoare triple {24424#(<= ~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; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,275 INFO L272 TraceCheckUtils]: 6: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,276 INFO L290 TraceCheckUtils]: 7: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,276 INFO L290 TraceCheckUtils]: 8: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,276 INFO L290 TraceCheckUtils]: 9: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,277 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #94#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,277 INFO L272 TraceCheckUtils]: 11: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,277 INFO L290 TraceCheckUtils]: 12: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,278 INFO L290 TraceCheckUtils]: 13: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,278 INFO L290 TraceCheckUtils]: 14: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,278 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #96#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,279 INFO L290 TraceCheckUtils]: 16: Hoare triple {24424#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:34,280 INFO L290 TraceCheckUtils]: 17: Hoare triple {24424#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:34,280 INFO L290 TraceCheckUtils]: 18: Hoare triple {24473#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:34,280 INFO L290 TraceCheckUtils]: 19: Hoare triple {24473#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:34,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {24473#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:34,281 INFO L290 TraceCheckUtils]: 21: Hoare triple {24483#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:34,281 INFO L290 TraceCheckUtils]: 22: Hoare triple {24483#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {24483#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:34,282 INFO L290 TraceCheckUtils]: 23: Hoare triple {24483#(<= ~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; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:34,282 INFO L290 TraceCheckUtils]: 24: Hoare triple {24483#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:34,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {24496#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:34,283 INFO L290 TraceCheckUtils]: 26: Hoare triple {24496#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:34,283 INFO L290 TraceCheckUtils]: 27: Hoare triple {24496#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:34,284 INFO L290 TraceCheckUtils]: 28: Hoare triple {24506#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:34,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {24506#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:34,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {24506#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {24516#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,285 INFO L272 TraceCheckUtils]: 32: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,285 INFO L290 TraceCheckUtils]: 33: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,286 INFO L290 TraceCheckUtils]: 34: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,286 INFO L290 TraceCheckUtils]: 35: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,287 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #98#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,287 INFO L272 TraceCheckUtils]: 37: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,287 INFO L290 TraceCheckUtils]: 38: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,288 INFO L290 TraceCheckUtils]: 39: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,288 INFO L290 TraceCheckUtils]: 40: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,289 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #100#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,289 INFO L272 TraceCheckUtils]: 42: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,289 INFO L290 TraceCheckUtils]: 43: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,290 INFO L290 TraceCheckUtils]: 44: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,290 INFO L290 TraceCheckUtils]: 45: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,291 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #102#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,291 INFO L272 TraceCheckUtils]: 47: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,291 INFO L290 TraceCheckUtils]: 48: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,292 INFO L290 TraceCheckUtils]: 49: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,292 INFO L290 TraceCheckUtils]: 50: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,292 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #104#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,293 INFO L290 TraceCheckUtils]: 52: Hoare triple {24516#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,293 INFO L290 TraceCheckUtils]: 53: Hoare triple {24516#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:34,294 INFO L290 TraceCheckUtils]: 54: Hoare triple {24516#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:34,294 INFO L290 TraceCheckUtils]: 55: Hoare triple {24589#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:34,294 INFO L290 TraceCheckUtils]: 56: Hoare triple {24589#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {24589#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:34,294 INFO L290 TraceCheckUtils]: 57: Hoare triple {24589#(<= ~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; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:34,295 INFO L290 TraceCheckUtils]: 58: Hoare triple {24589#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24602#(<= |main_#t~post6| 6)} is VALID [2022-04-28 12:30:34,295 INFO L290 TraceCheckUtils]: 59: Hoare triple {24602#(<= |main_#t~post6| 6)} assume !(#t~post6 < 50);havoc #t~post6; {24417#false} is VALID [2022-04-28 12:30:34,295 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#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)); {24417#false} is VALID [2022-04-28 12:30:34,295 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 12:30:34,295 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 12:30:34,295 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 12:30:34,296 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-28 12:30:34,296 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:34,668 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 12:30:34,668 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 12:30:34,668 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 12:30:34,668 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#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)); {24417#false} is VALID [2022-04-28 12:30:34,668 INFO L290 TraceCheckUtils]: 59: Hoare triple {24630#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {24417#false} is VALID [2022-04-28 12:30:34,669 INFO L290 TraceCheckUtils]: 58: Hoare triple {24634#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24630#(< |main_#t~post6| 50)} is VALID [2022-04-28 12:30:34,669 INFO L290 TraceCheckUtils]: 57: Hoare triple {24634#(< ~counter~0 50)} ~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; {24634#(< ~counter~0 50)} is VALID [2022-04-28 12:30:34,669 INFO L290 TraceCheckUtils]: 56: Hoare triple {24634#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {24634#(< ~counter~0 50)} is VALID [2022-04-28 12:30:34,670 INFO L290 TraceCheckUtils]: 55: Hoare triple {24634#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {24634#(< ~counter~0 50)} is VALID [2022-04-28 12:30:34,670 INFO L290 TraceCheckUtils]: 54: Hoare triple {24647#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24634#(< ~counter~0 50)} is VALID [2022-04-28 12:30:34,671 INFO L290 TraceCheckUtils]: 53: Hoare triple {24647#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,671 INFO L290 TraceCheckUtils]: 52: Hoare triple {24647#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,671 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #104#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,671 INFO L290 TraceCheckUtils]: 50: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L290 TraceCheckUtils]: 49: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L290 TraceCheckUtils]: 48: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L272 TraceCheckUtils]: 47: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #102#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,672 INFO L290 TraceCheckUtils]: 45: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L290 TraceCheckUtils]: 44: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L290 TraceCheckUtils]: 43: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 12:30:34,672 INFO L272 TraceCheckUtils]: 42: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 12:30:34,673 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #100#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,673 INFO L290 TraceCheckUtils]: 40: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 12:30:34,673 INFO L290 TraceCheckUtils]: 39: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 12:30:34,673 INFO L290 TraceCheckUtils]: 38: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 12:30:34,673 INFO L272 TraceCheckUtils]: 37: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 12:30:34,674 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24416#true} {24647#(< ~counter~0 49)} #98#return; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,674 INFO L290 TraceCheckUtils]: 35: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 12:30:34,674 INFO L290 TraceCheckUtils]: 34: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 12:30:34,674 INFO L290 TraceCheckUtils]: 33: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 12:30:34,674 INFO L272 TraceCheckUtils]: 32: Hoare triple {24647#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 12:30:34,674 INFO L290 TraceCheckUtils]: 31: Hoare triple {24647#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,675 INFO L290 TraceCheckUtils]: 30: Hoare triple {24720#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24647#(< ~counter~0 49)} is VALID [2022-04-28 12:30:34,675 INFO L290 TraceCheckUtils]: 29: Hoare triple {24720#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24720#(< ~counter~0 48)} is VALID [2022-04-28 12:30:34,675 INFO L290 TraceCheckUtils]: 28: Hoare triple {24720#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {24720#(< ~counter~0 48)} is VALID [2022-04-28 12:30:34,676 INFO L290 TraceCheckUtils]: 27: Hoare triple {24730#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24720#(< ~counter~0 48)} is VALID [2022-04-28 12:30:34,676 INFO L290 TraceCheckUtils]: 26: Hoare triple {24730#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24730#(< ~counter~0 47)} is VALID [2022-04-28 12:30:34,676 INFO L290 TraceCheckUtils]: 25: Hoare triple {24730#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {24730#(< ~counter~0 47)} is VALID [2022-04-28 12:30:34,677 INFO L290 TraceCheckUtils]: 24: Hoare triple {24740#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24730#(< ~counter~0 47)} is VALID [2022-04-28 12:30:34,677 INFO L290 TraceCheckUtils]: 23: Hoare triple {24740#(< ~counter~0 46)} ~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; {24740#(< ~counter~0 46)} is VALID [2022-04-28 12:30:34,677 INFO L290 TraceCheckUtils]: 22: Hoare triple {24740#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {24740#(< ~counter~0 46)} is VALID [2022-04-28 12:30:34,678 INFO L290 TraceCheckUtils]: 21: Hoare triple {24740#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {24740#(< ~counter~0 46)} is VALID [2022-04-28 12:30:34,678 INFO L290 TraceCheckUtils]: 20: Hoare triple {24753#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24740#(< ~counter~0 46)} is VALID [2022-04-28 12:30:34,679 INFO L290 TraceCheckUtils]: 19: Hoare triple {24753#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24753#(< ~counter~0 45)} is VALID [2022-04-28 12:30:34,679 INFO L290 TraceCheckUtils]: 18: Hoare triple {24753#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {24753#(< ~counter~0 45)} is VALID [2022-04-28 12:30:34,679 INFO L290 TraceCheckUtils]: 17: Hoare triple {24763#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24753#(< ~counter~0 45)} is VALID [2022-04-28 12:30:34,680 INFO L290 TraceCheckUtils]: 16: Hoare triple {24763#(< ~counter~0 44)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,680 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24416#true} {24763#(< ~counter~0 44)} #96#return; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,680 INFO L290 TraceCheckUtils]: 14: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 12:30:34,680 INFO L290 TraceCheckUtils]: 13: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 12:30:34,680 INFO L290 TraceCheckUtils]: 12: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 12:30:34,680 INFO L272 TraceCheckUtils]: 11: Hoare triple {24763#(< ~counter~0 44)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 12:30:34,681 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24416#true} {24763#(< ~counter~0 44)} #94#return; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,681 INFO L290 TraceCheckUtils]: 9: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 12:30:34,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 12:30:34,681 INFO L290 TraceCheckUtils]: 7: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 12:30:34,681 INFO L272 TraceCheckUtils]: 6: Hoare triple {24763#(< ~counter~0 44)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 12:30:34,681 INFO L290 TraceCheckUtils]: 5: Hoare triple {24763#(< ~counter~0 44)} 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; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,681 INFO L272 TraceCheckUtils]: 4: Hoare triple {24763#(< ~counter~0 44)} call #t~ret9 := main(); {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,682 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24763#(< ~counter~0 44)} {24416#true} #108#return; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {24763#(< ~counter~0 44)} assume true; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#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; {24763#(< ~counter~0 44)} is VALID [2022-04-28 12:30:34,683 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 12:30:34,683 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-28 12:30:34,683 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:34,685 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1426550414] [2022-04-28 12:30:34,686 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:34,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [330593135] [2022-04-28 12:30:34,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [330593135] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:34,686 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:34,686 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 12:30:34,686 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:34,686 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1100581387] [2022-04-28 12:30:34,686 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1100581387] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:34,686 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:34,687 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 12:30:34,687 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [121431533] [2022-04-28 12:30:34,687 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:34,688 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 12:30:34,688 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:34,688 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:34,723 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-28 12:30:34,724 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 12:30:34,724 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:34,724 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 12:30:34,724 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 12:30:34,724 INFO L87 Difference]: Start difference. First operand 426 states and 598 transitions. Second operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:36,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:36,375 INFO L93 Difference]: Finished difference Result 531 states and 722 transitions. [2022-04-28 12:30:36,375 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 12:30:36,375 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 12:30:36,375 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:36,375 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:36,378 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 12:30:36,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:36,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 12:30:36,381 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 162 transitions. [2022-04-28 12:30:36,495 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:36,507 INFO L225 Difference]: With dead ends: 531 [2022-04-28 12:30:36,507 INFO L226 Difference]: Without dead ends: 524 [2022-04-28 12:30:36,508 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=188, Invalid=274, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:30:36,508 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 84 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 325 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:36,508 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 325 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:30:36,509 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 524 states. [2022-04-28 12:30:37,705 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 524 to 503. [2022-04-28 12:30:37,706 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:37,707 INFO L82 GeneralOperation]: Start isEquivalent. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:37,707 INFO L74 IsIncluded]: Start isIncluded. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:37,708 INFO L87 Difference]: Start difference. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:37,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:37,722 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 12:30:37,722 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 12:30:37,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:37,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:37,723 INFO L74 IsIncluded]: Start isIncluded. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 12:30:37,724 INFO L87 Difference]: Start difference. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 12:30:37,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:37,737 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 12:30:37,737 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 12:30:37,738 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:37,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:37,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:37,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:37,739 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:37,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 503 states to 503 states and 691 transitions. [2022-04-28 12:30:37,768 INFO L78 Accepts]: Start accepts. Automaton has 503 states and 691 transitions. Word has length 64 [2022-04-28 12:30:37,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:37,769 INFO L495 AbstractCegarLoop]: Abstraction has 503 states and 691 transitions. [2022-04-28 12:30:37,769 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:37,769 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 503 states and 691 transitions. [2022-04-28 12:30:38,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 691 edges. 691 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:38,557 INFO L276 IsEmpty]: Start isEmpty. Operand 503 states and 691 transitions. [2022-04-28 12:30:38,558 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 12:30:38,558 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:38,558 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-28 12:30:38,578 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-28 12:30:38,758 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:38,758 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:38,759 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:38,759 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-28 12:30:38,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:38,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [353973492] [2022-04-28 12:30:38,759 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:38,759 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 2 times [2022-04-28 12:30:38,759 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:38,759 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [8499016] [2022-04-28 12:30:38,759 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:38,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:38,772 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:38,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [612203093] [2022-04-28 12:30:38,772 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:38,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:38,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:38,779 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:38,798 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-28 12:30:38,841 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:38,841 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:38,842 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-28 12:30:38,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:38,856 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:39,188 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#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; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#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; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 12:30:39,189 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 12:30:39,190 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:30:39,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:30:39,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:30:39,191 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} {27941#true} #96#return; {27993#(<= 1 main_~y~0)} is VALID [2022-04-28 12:30:39,191 INFO L290 TraceCheckUtils]: 16: Hoare triple {27993#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 12:30:39,191 INFO L290 TraceCheckUtils]: 17: Hoare triple {27997#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 12:30:39,192 INFO L290 TraceCheckUtils]: 18: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 12:30:39,192 INFO L290 TraceCheckUtils]: 19: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 12:30:39,192 INFO L290 TraceCheckUtils]: 20: Hoare triple {27997#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 12:30:39,192 INFO L290 TraceCheckUtils]: 21: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post7 < 50);havoc #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 12:30:39,193 INFO L290 TraceCheckUtils]: 22: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,193 INFO L290 TraceCheckUtils]: 23: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,194 INFO L290 TraceCheckUtils]: 24: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,194 INFO L272 TraceCheckUtils]: 25: Hoare triple {28016#(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)); {27941#true} is VALID [2022-04-28 12:30:39,194 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,194 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,194 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,195 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,195 INFO L272 TraceCheckUtils]: 30: Hoare triple {28016#(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)); {27941#true} is VALID [2022-04-28 12:30:39,195 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,195 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,195 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,195 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,195 INFO L272 TraceCheckUtils]: 35: Hoare triple {28016#(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)); {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,196 INFO L272 TraceCheckUtils]: 40: Hoare triple {28016#(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)); {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,196 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,197 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,197 INFO L290 TraceCheckUtils]: 45: Hoare triple {28016#(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; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,198 INFO L290 TraceCheckUtils]: 46: Hoare triple {28086#(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; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,198 INFO L290 TraceCheckUtils]: 47: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,198 INFO L272 TraceCheckUtils]: 48: Hoare triple {28086#(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)); {27941#true} is VALID [2022-04-28 12:30:39,198 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,198 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,198 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,199 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,199 INFO L272 TraceCheckUtils]: 53: Hoare triple {28086#(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)); {27941#true} is VALID [2022-04-28 12:30:39,199 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,199 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,199 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,200 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,200 INFO L272 TraceCheckUtils]: 58: Hoare triple {28086#(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)); {27941#true} is VALID [2022-04-28 12:30:39,200 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,200 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,200 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,201 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 12:30:39,201 INFO L272 TraceCheckUtils]: 63: Hoare triple {28086#(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)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:30:39,202 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:30:39,202 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 12:30:39,202 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 12:30:39,202 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-28 12:30:39,202 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:39,425 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 12:30:39,425 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 12:30:39,426 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:30:39,426 INFO L272 TraceCheckUtils]: 63: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:30:39,427 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,427 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,427 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,427 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,427 INFO L272 TraceCheckUtils]: 58: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 12:30:39,428 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,428 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,428 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,428 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,428 INFO L272 TraceCheckUtils]: 53: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 12:30:39,429 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,429 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,429 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,429 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,429 INFO L272 TraceCheckUtils]: 48: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 12:30:39,429 INFO L290 TraceCheckUtils]: 47: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,430 INFO L290 TraceCheckUtils]: 46: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,431 INFO L290 TraceCheckUtils]: 45: Hoare triple {28161#(= 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; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,432 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,432 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,432 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,432 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,432 INFO L272 TraceCheckUtils]: 40: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 12:30:39,433 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,433 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,433 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,433 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,433 INFO L272 TraceCheckUtils]: 35: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 12:30:39,433 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,434 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,434 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,434 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,434 INFO L272 TraceCheckUtils]: 30: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 12:30:39,434 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,434 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,435 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,435 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,435 INFO L272 TraceCheckUtils]: 25: Hoare triple {28161#(= 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)); {27941#true} is VALID [2022-04-28 12:30:39,435 INFO L290 TraceCheckUtils]: 24: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 50);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,435 INFO L290 TraceCheckUtils]: 23: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 22: Hoare triple {27941#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 21: Hoare triple {27941#true} assume !!(#t~post7 < 50);havoc #t~post7; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 20: Hoare triple {27941#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 19: Hoare triple {27941#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 18: Hoare triple {27941#true} assume !!(#t~post6 < 50);havoc #t~post6; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 17: Hoare triple {27941#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 16: Hoare triple {27941#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27941#true} {27941#true} #96#return; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 14: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 13: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,436 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#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; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#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; {27941#true} is VALID [2022-04-28 12:30:39,437 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 12:30:39,437 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-28 12:30:39,438 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:39,438 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [8499016] [2022-04-28 12:30:39,438 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:39,438 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [612203093] [2022-04-28 12:30:39,438 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [612203093] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 12:30:39,438 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:30:39,438 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 12:30:39,438 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:39,438 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [353973492] [2022-04-28 12:30:39,438 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [353973492] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:39,438 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:39,438 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:30:39,438 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2071955796] [2022-04-28 12:30:39,438 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:39,439 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-28 12:30:39,439 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:39,439 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-28 12:30:39,466 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-28 12:30:39,467 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:30:39,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:39,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:30:39,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 12:30:39,467 INFO L87 Difference]: Start difference. First operand 503 states and 691 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-28 12:30:40,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:40,464 INFO L93 Difference]: Finished difference Result 517 states and 704 transitions. [2022-04-28 12:30:40,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:30:40,464 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-28 12:30:40,465 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:40,465 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-28 12:30:40,475 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 12:30:40,476 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-28 12:30:40,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 12:30:40,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-28 12:30:40,531 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-28 12:30:40,543 INFO L225 Difference]: With dead ends: 517 [2022-04-28 12:30:40,543 INFO L226 Difference]: Without dead ends: 515 [2022-04-28 12:30:40,544 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-28 12:30:40,544 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 12 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:40,544 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 144 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:30:40,545 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 515 states. [2022-04-28 12:30:41,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 515 to 511. [2022-04-28 12:30:41,656 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:41,669 INFO L82 GeneralOperation]: Start isEquivalent. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:41,670 INFO L74 IsIncluded]: Start isIncluded. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:41,670 INFO L87 Difference]: Start difference. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:41,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:41,681 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 12:30:41,681 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 12:30:41,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:41,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:41,683 INFO L74 IsIncluded]: Start isIncluded. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 12:30:41,683 INFO L87 Difference]: Start difference. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 12:30:41,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:41,694 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 12:30:41,694 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 12:30:41,695 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:41,695 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:41,695 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:41,695 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:41,696 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:41,711 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 511 states to 511 states and 695 transitions. [2022-04-28 12:30:41,711 INFO L78 Accepts]: Start accepts. Automaton has 511 states and 695 transitions. Word has length 67 [2022-04-28 12:30:41,711 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:41,711 INFO L495 AbstractCegarLoop]: Abstraction has 511 states and 695 transitions. [2022-04-28 12:30:41,711 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-28 12:30:41,711 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 511 states and 695 transitions. [2022-04-28 12:30:42,589 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 695 edges. 695 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:42,590 INFO L276 IsEmpty]: Start isEmpty. Operand 511 states and 695 transitions. [2022-04-28 12:30:42,590 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 12:30:42,590 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:42,590 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:30:42,642 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-28 12:30:42,796 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:42,797 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:42,797 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:42,797 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 3 times [2022-04-28 12:30:42,797 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:42,797 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1003778845] [2022-04-28 12:30:42,797 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:42,797 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 4 times [2022-04-28 12:30:42,797 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:42,798 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [172058039] [2022-04-28 12:30:42,798 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:42,798 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:42,807 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:42,807 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1506471362] [2022-04-28 12:30:42,807 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:30:42,807 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:42,808 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:42,808 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:42,809 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-28 12:30:42,849 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:30:42,850 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:42,850 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 12:30:42,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:42,861 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:43,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 12:30:43,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#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; {31441#true} is VALID [2022-04-28 12:30:43,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#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; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 12:30:43,086 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 50);havoc #t~post6; {31441#true} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 50);havoc #t~post7; {31441#true} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:30:43,087 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(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; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:30:43,088 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:30:43,088 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:30:43,088 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:30:43,089 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:30:43,089 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:30:43,089 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,090 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,090 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 50);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,090 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,090 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,090 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,090 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,091 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,091 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,091 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,091 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,091 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,092 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,092 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,092 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,092 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,092 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,092 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,092 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,092 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,093 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,093 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,093 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,093 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,094 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,094 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,094 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,095 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,095 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 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; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 12:30:43,095 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 12:30:43,096 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 12:30:43,096 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 12:30:43,096 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#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)); {31442#false} is VALID [2022-04-28 12:30:43,096 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 12:30:43,096 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 12:30:43,096 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 12:30:43,096 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:43,096 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:43,278 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 12:30:43,278 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 12:30:43,278 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 12:30:43,278 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#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)); {31442#false} is VALID [2022-04-28 12:30:43,279 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 12:30:43,279 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 12:30:43,279 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 12:30:43,279 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 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; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 12:30:43,280 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,280 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,280 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,281 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 12:30:43,281 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,281 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,281 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,281 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,281 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,282 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,282 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,282 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,282 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,282 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,282 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,283 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,283 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,283 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,283 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,283 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,283 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,283 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,284 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,284 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,284 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,284 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 50);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 12:30:43,285 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 50);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:30:43,285 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:30:43,285 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:30:43,285 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 50);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(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; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 50);havoc #t~post7; {31441#true} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 50);havoc #t~post6; {31441#true} is VALID [2022-04-28 12:30:43,286 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#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; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 12:30:43,287 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 12:30:43,288 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#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; {31441#true} is VALID [2022-04-28 12:30:43,288 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 12:30:43,288 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:43,288 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:43,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [172058039] [2022-04-28 12:30:43,288 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:43,288 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1506471362] [2022-04-28 12:30:43,289 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1506471362] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:43,289 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:43,289 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 12:30:43,289 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:43,289 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1003778845] [2022-04-28 12:30:43,289 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1003778845] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:43,289 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:43,289 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:30:43,289 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1791201103] [2022-04-28 12:30:43,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:43,290 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 12:30:43,290 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:43,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:43,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:43,338 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:30:43,338 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:43,339 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:30:43,339 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 12:30:43,339 INFO L87 Difference]: Start difference. First operand 511 states and 695 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:46,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:46,583 INFO L93 Difference]: Finished difference Result 857 states and 1271 transitions. [2022-04-28 12:30:46,584 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 12:30:46,584 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 12:30:46,584 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:46,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:46,586 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 12:30:46,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:46,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 12:30:46,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 227 transitions. [2022-04-28 12:30:46,769 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:46,819 INFO L225 Difference]: With dead ends: 857 [2022-04-28 12:30:46,820 INFO L226 Difference]: Without dead ends: 850 [2022-04-28 12:30:46,820 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 65 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=313, Unknown=0, NotChecked=0, Total=420 [2022-04-28 12:30:46,820 INFO L413 NwaCegarLoop]: 120 mSDtfsCounter, 81 mSDsluCounter, 334 mSDsCounter, 0 mSdLazyCounter, 401 mSolverCounterSat, 91 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 454 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 91 IncrementalHoareTripleChecker+Valid, 401 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:46,821 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 454 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [91 Valid, 401 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:30:46,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 850 states. [2022-04-28 12:30:47,978 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 850 to 567. [2022-04-28 12:30:47,978 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:47,979 INFO L82 GeneralOperation]: Start isEquivalent. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:47,979 INFO L74 IsIncluded]: Start isIncluded. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:47,979 INFO L87 Difference]: Start difference. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:48,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:48,012 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 12:30:48,012 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 12:30:48,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:48,014 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:48,014 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 12:30:48,014 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 12:30:48,047 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:48,048 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 12:30:48,048 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 12:30:48,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:48,050 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:48,050 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:48,050 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:48,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:48,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 783 transitions. [2022-04-28 12:30:48,068 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 783 transitions. Word has length 65 [2022-04-28 12:30:48,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:48,068 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 783 transitions. [2022-04-28 12:30:48,069 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:48,069 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 783 transitions. [2022-04-28 12:30:48,949 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 783 edges. 783 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:48,949 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 783 transitions. [2022-04-28 12:30:48,949 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 12:30:48,949 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:48,950 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:30:48,966 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Ended with exit code 0 [2022-04-28 12:30:49,166 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-28 12:30:49,166 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:49,166 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:49,167 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 1 times [2022-04-28 12:30:49,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:49,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1957107675] [2022-04-28 12:30:49,167 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:49,167 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 2 times [2022-04-28 12:30:49,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:49,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1699798342] [2022-04-28 12:30:49,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:49,167 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:49,178 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:49,178 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [24095767] [2022-04-28 12:30:49,178 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:49,178 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:49,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:49,179 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:30:49,180 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-28 12:30:49,223 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:49,223 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:49,223 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 12:30:49,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:49,235 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:49,471 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 12:30:49,471 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#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; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,472 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36426#(<= ~counter~0 0)} {36418#true} #108#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,472 INFO L272 TraceCheckUtils]: 4: Hoare triple {36426#(<= ~counter~0 0)} call #t~ret9 := main(); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,473 INFO L290 TraceCheckUtils]: 5: Hoare triple {36426#(<= ~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; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,473 INFO L272 TraceCheckUtils]: 6: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,473 INFO L290 TraceCheckUtils]: 7: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,473 INFO L290 TraceCheckUtils]: 8: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,474 INFO L290 TraceCheckUtils]: 9: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,474 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #94#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,474 INFO L272 TraceCheckUtils]: 11: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,475 INFO L290 TraceCheckUtils]: 12: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,475 INFO L290 TraceCheckUtils]: 14: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,475 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #96#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,476 INFO L290 TraceCheckUtils]: 16: Hoare triple {36426#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:49,477 INFO L290 TraceCheckUtils]: 17: Hoare triple {36426#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:49,477 INFO L290 TraceCheckUtils]: 18: Hoare triple {36475#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:49,477 INFO L290 TraceCheckUtils]: 19: Hoare triple {36475#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:49,478 INFO L290 TraceCheckUtils]: 20: Hoare triple {36475#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:49,478 INFO L290 TraceCheckUtils]: 21: Hoare triple {36485#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:49,478 INFO L290 TraceCheckUtils]: 22: Hoare triple {36485#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {36485#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:49,478 INFO L290 TraceCheckUtils]: 23: Hoare triple {36485#(<= ~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; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:49,479 INFO L290 TraceCheckUtils]: 24: Hoare triple {36485#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:49,479 INFO L290 TraceCheckUtils]: 25: Hoare triple {36498#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:49,479 INFO L290 TraceCheckUtils]: 26: Hoare triple {36498#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:49,480 INFO L290 TraceCheckUtils]: 27: Hoare triple {36498#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:49,480 INFO L290 TraceCheckUtils]: 28: Hoare triple {36508#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:49,480 INFO L290 TraceCheckUtils]: 29: Hoare triple {36508#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:49,481 INFO L290 TraceCheckUtils]: 30: Hoare triple {36508#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,481 INFO L290 TraceCheckUtils]: 31: Hoare triple {36518#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,482 INFO L272 TraceCheckUtils]: 32: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,482 INFO L290 TraceCheckUtils]: 33: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,482 INFO L290 TraceCheckUtils]: 34: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,482 INFO L290 TraceCheckUtils]: 35: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,483 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #98#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,483 INFO L272 TraceCheckUtils]: 37: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,484 INFO L290 TraceCheckUtils]: 38: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,484 INFO L290 TraceCheckUtils]: 39: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,484 INFO L290 TraceCheckUtils]: 40: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,484 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #100#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,485 INFO L272 TraceCheckUtils]: 42: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,485 INFO L290 TraceCheckUtils]: 43: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,485 INFO L290 TraceCheckUtils]: 44: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,486 INFO L290 TraceCheckUtils]: 45: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,486 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #102#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,486 INFO L272 TraceCheckUtils]: 47: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,487 INFO L290 TraceCheckUtils]: 48: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,487 INFO L290 TraceCheckUtils]: 49: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,487 INFO L290 TraceCheckUtils]: 50: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,488 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #104#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,488 INFO L290 TraceCheckUtils]: 52: Hoare triple {36518#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:49,488 INFO L290 TraceCheckUtils]: 53: Hoare triple {36518#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36588#(<= |main_#t~post8| 5)} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 54: Hoare triple {36588#(<= |main_#t~post8| 5)} assume !(#t~post8 < 50);havoc #t~post8; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 50);havoc #t~post7; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#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; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 50);havoc #t~post6; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#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)); {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 12:30:49,489 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:49,490 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:49,738 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#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)); {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 50);havoc #t~post6; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#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; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 50);havoc #t~post7; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 12:30:49,739 INFO L290 TraceCheckUtils]: 54: Hoare triple {36652#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {36419#false} is VALID [2022-04-28 12:30:49,740 INFO L290 TraceCheckUtils]: 53: Hoare triple {36656#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36652#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:30:49,740 INFO L290 TraceCheckUtils]: 52: Hoare triple {36656#(< ~counter~0 50)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,740 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #104#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,740 INFO L290 TraceCheckUtils]: 50: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 12:30:49,740 INFO L290 TraceCheckUtils]: 49: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 12:30:49,740 INFO L290 TraceCheckUtils]: 48: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 12:30:49,740 INFO L272 TraceCheckUtils]: 47: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 12:30:49,741 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #102#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,741 INFO L290 TraceCheckUtils]: 45: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 12:30:49,741 INFO L290 TraceCheckUtils]: 44: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 12:30:49,741 INFO L290 TraceCheckUtils]: 43: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 12:30:49,741 INFO L272 TraceCheckUtils]: 42: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 12:30:49,741 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #100#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,741 INFO L290 TraceCheckUtils]: 40: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L290 TraceCheckUtils]: 39: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L290 TraceCheckUtils]: 38: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L272 TraceCheckUtils]: 37: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36418#true} {36656#(< ~counter~0 50)} #98#return; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,742 INFO L290 TraceCheckUtils]: 35: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L290 TraceCheckUtils]: 34: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L290 TraceCheckUtils]: 33: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L272 TraceCheckUtils]: 32: Hoare triple {36656#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 12:30:49,742 INFO L290 TraceCheckUtils]: 31: Hoare triple {36656#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,743 INFO L290 TraceCheckUtils]: 30: Hoare triple {36726#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36656#(< ~counter~0 50)} is VALID [2022-04-28 12:30:49,743 INFO L290 TraceCheckUtils]: 29: Hoare triple {36726#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36726#(< ~counter~0 49)} is VALID [2022-04-28 12:30:49,746 INFO L290 TraceCheckUtils]: 28: Hoare triple {36726#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {36726#(< ~counter~0 49)} is VALID [2022-04-28 12:30:49,746 INFO L290 TraceCheckUtils]: 27: Hoare triple {36736#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36726#(< ~counter~0 49)} is VALID [2022-04-28 12:30:49,747 INFO L290 TraceCheckUtils]: 26: Hoare triple {36736#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36736#(< ~counter~0 48)} is VALID [2022-04-28 12:30:49,747 INFO L290 TraceCheckUtils]: 25: Hoare triple {36736#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {36736#(< ~counter~0 48)} is VALID [2022-04-28 12:30:49,747 INFO L290 TraceCheckUtils]: 24: Hoare triple {36746#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36736#(< ~counter~0 48)} is VALID [2022-04-28 12:30:49,747 INFO L290 TraceCheckUtils]: 23: Hoare triple {36746#(< ~counter~0 47)} ~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; {36746#(< ~counter~0 47)} is VALID [2022-04-28 12:30:49,748 INFO L290 TraceCheckUtils]: 22: Hoare triple {36746#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {36746#(< ~counter~0 47)} is VALID [2022-04-28 12:30:49,748 INFO L290 TraceCheckUtils]: 21: Hoare triple {36746#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {36746#(< ~counter~0 47)} is VALID [2022-04-28 12:30:49,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {36759#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36746#(< ~counter~0 47)} is VALID [2022-04-28 12:30:49,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {36759#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36759#(< ~counter~0 46)} is VALID [2022-04-28 12:30:49,749 INFO L290 TraceCheckUtils]: 18: Hoare triple {36759#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {36759#(< ~counter~0 46)} is VALID [2022-04-28 12:30:49,749 INFO L290 TraceCheckUtils]: 17: Hoare triple {36769#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36759#(< ~counter~0 46)} is VALID [2022-04-28 12:30:49,749 INFO L290 TraceCheckUtils]: 16: Hoare triple {36769#(< ~counter~0 45)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,750 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36418#true} {36769#(< ~counter~0 45)} #96#return; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 14: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 13: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 12: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L272 TraceCheckUtils]: 11: Hoare triple {36769#(< ~counter~0 45)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36418#true} {36769#(< ~counter~0 45)} #94#return; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 9: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 8: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 7: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L272 TraceCheckUtils]: 6: Hoare triple {36769#(< ~counter~0 45)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 12:30:49,750 INFO L290 TraceCheckUtils]: 5: Hoare triple {36769#(< ~counter~0 45)} 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; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,751 INFO L272 TraceCheckUtils]: 4: Hoare triple {36769#(< ~counter~0 45)} call #t~ret9 := main(); {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,751 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36769#(< ~counter~0 45)} {36418#true} #108#return; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,751 INFO L290 TraceCheckUtils]: 2: Hoare triple {36769#(< ~counter~0 45)} assume true; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,751 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#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; {36769#(< ~counter~0 45)} is VALID [2022-04-28 12:30:49,752 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 12:30:49,752 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:49,752 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:49,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1699798342] [2022-04-28 12:30:49,752 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:49,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [24095767] [2022-04-28 12:30:49,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [24095767] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:49,752 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:49,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 12:30:49,752 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:49,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1957107675] [2022-04-28 12:30:49,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1957107675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:49,753 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:49,753 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:30:49,753 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1894834514] [2022-04-28 12:30:49,753 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:49,753 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 12:30:49,755 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:49,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:49,778 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:49,778 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:30:49,778 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:49,779 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:30:49,779 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:30:49,779 INFO L87 Difference]: Start difference. First operand 567 states and 783 transitions. Second operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:50,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:50,797 INFO L93 Difference]: Finished difference Result 839 states and 1203 transitions. [2022-04-28 12:30:50,797 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 12:30:50,797 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 12:30:50,797 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:50,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:50,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 12:30:50,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:50,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 12:30:50,799 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 153 transitions. [2022-04-28 12:30:50,871 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:50,902 INFO L225 Difference]: With dead ends: 839 [2022-04-28 12:30:50,903 INFO L226 Difference]: Without dead ends: 567 [2022-04-28 12:30:50,905 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=135, Invalid=207, Unknown=0, NotChecked=0, Total=342 [2022-04-28 12:30:50,905 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 77 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:50,906 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 203 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:30:50,908 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 567 states. [2022-04-28 12:30:52,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 567 to 567. [2022-04-28 12:30:52,034 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:52,034 INFO L82 GeneralOperation]: Start isEquivalent. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:52,035 INFO L74 IsIncluded]: Start isIncluded. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:52,035 INFO L87 Difference]: Start difference. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:52,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:52,048 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 12:30:52,048 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 12:30:52,049 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:52,049 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:52,049 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 12:30:52,050 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 12:30:52,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:52,062 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 12:30:52,062 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 12:30:52,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:52,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:52,063 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:52,063 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:52,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 12:30:52,081 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 779 transitions. [2022-04-28 12:30:52,081 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 779 transitions. Word has length 65 [2022-04-28 12:30:52,082 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:52,082 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 779 transitions. [2022-04-28 12:30:52,082 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:52,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 779 transitions. [2022-04-28 12:30:53,059 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:53,059 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 12:30:53,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 12:30:53,060 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:53,060 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:30:53,078 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-28 12:30:53,276 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-28 12:30:53,276 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:53,276 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:53,276 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 1 times [2022-04-28 12:30:53,276 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:53,276 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1110543546] [2022-04-28 12:30:53,277 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:53,277 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 2 times [2022-04-28 12:30:53,277 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:53,277 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [510836273] [2022-04-28 12:30:53,277 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:53,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:53,305 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:53,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [947139901] [2022-04-28 12:30:53,305 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:30:53,305 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:53,305 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:53,306 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-28 12:30:53,307 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-28 12:30:53,386 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:30:53,386 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:53,387 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 12:30:53,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:53,398 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:53,588 INFO L272 TraceCheckUtils]: 0: Hoare triple {40775#true} call ULTIMATE.init(); {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {40775#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; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40775#true} {40775#true} #108#return; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L272 TraceCheckUtils]: 4: Hoare triple {40775#true} call #t~ret9 := main(); {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {40775#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; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L272 TraceCheckUtils]: 6: Hoare triple {40775#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40775#true} {40775#true} #94#return; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L272 TraceCheckUtils]: 11: Hoare triple {40775#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 12: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 12:30:53,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {40775#true} {40775#true} #96#return; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 16: Hoare triple {40775#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 17: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 18: Hoare triple {40775#true} assume !!(#t~post6 < 50);havoc #t~post6; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 19: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 20: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 21: Hoare triple {40775#true} assume !!(#t~post7 < 50);havoc #t~post7; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 22: Hoare triple {40775#true} assume !(~c~0 >= ~b~0); {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 23: Hoare triple {40775#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; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 24: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 25: Hoare triple {40775#true} assume !!(#t~post6 < 50);havoc #t~post6; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 26: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 27: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 12:30:53,590 INFO L290 TraceCheckUtils]: 28: Hoare triple {40775#true} assume !!(#t~post7 < 50);havoc #t~post7; {40775#true} is VALID [2022-04-28 12:30:53,591 INFO L290 TraceCheckUtils]: 29: Hoare triple {40775#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,591 INFO L290 TraceCheckUtils]: 30: Hoare triple {40867#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,591 INFO L290 TraceCheckUtils]: 31: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 50);havoc #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,591 INFO L272 TraceCheckUtils]: 32: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 12:30:53,591 INFO L290 TraceCheckUtils]: 33: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 12:30:53,591 INFO L290 TraceCheckUtils]: 34: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 12:30:53,592 INFO L290 TraceCheckUtils]: 35: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,592 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #98#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,592 INFO L272 TraceCheckUtils]: 37: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 12:30:53,592 INFO L290 TraceCheckUtils]: 38: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 12:30:53,592 INFO L290 TraceCheckUtils]: 39: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 12:30:53,592 INFO L290 TraceCheckUtils]: 40: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,593 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #100#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,593 INFO L272 TraceCheckUtils]: 42: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 12:30:53,593 INFO L290 TraceCheckUtils]: 43: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 12:30:53,593 INFO L290 TraceCheckUtils]: 44: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 12:30:53,593 INFO L290 TraceCheckUtils]: 45: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,593 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #102#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,593 INFO L272 TraceCheckUtils]: 47: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 12:30:53,594 INFO L290 TraceCheckUtils]: 48: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 12:30:53,594 INFO L290 TraceCheckUtils]: 49: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 12:30:53,594 INFO L290 TraceCheckUtils]: 50: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 12:30:53,594 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #104#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 12:30:53,594 INFO L290 TraceCheckUtils]: 52: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 12:30:53,595 INFO L290 TraceCheckUtils]: 53: Hoare triple {40937#(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; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 12:30:53,595 INFO L290 TraceCheckUtils]: 54: Hoare triple {40941#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 12:30:53,595 INFO L290 TraceCheckUtils]: 55: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 50);havoc #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 56: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 57: Hoare triple {40776#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 58: Hoare triple {40776#false} assume !(#t~post8 < 50);havoc #t~post8; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 59: Hoare triple {40776#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 60: Hoare triple {40776#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 61: Hoare triple {40776#false} assume !(#t~post7 < 50);havoc #t~post7; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 62: Hoare triple {40776#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; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 63: Hoare triple {40776#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 64: Hoare triple {40776#false} assume !(#t~post6 < 50);havoc #t~post6; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L272 TraceCheckUtils]: 65: Hoare triple {40776#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)); {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 66: Hoare triple {40776#false} ~cond := #in~cond; {40776#false} is VALID [2022-04-28 12:30:53,596 INFO L290 TraceCheckUtils]: 67: Hoare triple {40776#false} assume 0 == ~cond; {40776#false} is VALID [2022-04-28 12:30:53,597 INFO L290 TraceCheckUtils]: 68: Hoare triple {40776#false} assume !false; {40776#false} is VALID [2022-04-28 12:30:53,597 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2022-04-28 12:30:53,597 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:30:53,597 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:53,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [510836273] [2022-04-28 12:30:53,597 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:53,597 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [947139901] [2022-04-28 12:30:53,597 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [947139901] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:53,597 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:53,597 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:30:53,597 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:53,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1110543546] [2022-04-28 12:30:53,598 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1110543546] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:53,598 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:53,598 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:30:53,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [696857891] [2022-04-28 12:30:53,598 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:53,598 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 12:30:53,598 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:53,598 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:53,639 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-28 12:30:53,639 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:30:53,639 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:53,639 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:30:53,639 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:30:53,639 INFO L87 Difference]: Start difference. First operand 567 states and 779 transitions. Second operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:55,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:55,187 INFO L93 Difference]: Finished difference Result 980 states and 1387 transitions. [2022-04-28 12:30:55,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:30:55,187 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 12:30:55,187 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:30:55,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:55,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 12:30:55,188 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:55,189 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 12:30:55,189 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-28 12:30:55,268 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-28 12:30:55,285 INFO L225 Difference]: With dead ends: 980 [2022-04-28 12:30:55,285 INFO L226 Difference]: Without dead ends: 624 [2022-04-28 12:30:55,286 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 66 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 12:30:55,286 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 11 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:30:55,287 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 121 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:30:55,288 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states. [2022-04-28 12:30:56,855 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 568. [2022-04-28 12:30:56,855 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:30:56,856 INFO L82 GeneralOperation]: Start isEquivalent. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:56,856 INFO L74 IsIncluded]: Start isIncluded. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:56,857 INFO L87 Difference]: Start difference. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:56,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:56,872 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 12:30:56,872 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 12:30:56,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:56,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:56,873 INFO L74 IsIncluded]: Start isIncluded. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 12:30:56,873 INFO L87 Difference]: Start difference. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 12:30:56,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:30:56,888 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 12:30:56,888 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 12:30:56,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:30:56,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:30:56,889 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:30:56,889 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:30:56,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:30:56,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 568 states to 568 states and 779 transitions. [2022-04-28 12:30:56,907 INFO L78 Accepts]: Start accepts. Automaton has 568 states and 779 transitions. Word has length 69 [2022-04-28 12:30:56,907 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:30:56,907 INFO L495 AbstractCegarLoop]: Abstraction has 568 states and 779 transitions. [2022-04-28 12:30:56,907 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:30:56,907 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 568 states and 779 transitions. [2022-04-28 12:30:58,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:30:58,073 INFO L276 IsEmpty]: Start isEmpty. Operand 568 states and 779 transitions. [2022-04-28 12:30:58,073 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 12:30:58,073 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:30:58,073 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:30:58,089 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-28 12:30:58,273 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-28 12:30:58,274 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:30:58,274 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:30:58,274 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 3 times [2022-04-28 12:30:58,274 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:58,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [312643141] [2022-04-28 12:30:58,274 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:30:58,275 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 4 times [2022-04-28 12:30:58,275 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:30:58,275 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1830859793] [2022-04-28 12:30:58,275 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:30:58,275 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:30:58,285 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:30:58,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1641144187] [2022-04-28 12:30:58,286 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:30:58,286 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:30:58,286 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:30:58,287 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-28 12:30:58,288 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-28 12:30:58,334 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:30:58,334 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:30:58,335 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 12:30:58,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:30:58,349 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:30:58,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 12:30:58,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#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; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45341#(<= ~counter~0 0)} {45333#true} #108#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {45341#(<= ~counter~0 0)} call #t~ret9 := main(); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {45341#(<= ~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; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #94#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,686 INFO L272 TraceCheckUtils]: 11: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,686 INFO L290 TraceCheckUtils]: 12: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,686 INFO L290 TraceCheckUtils]: 13: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,686 INFO L290 TraceCheckUtils]: 14: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,687 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #96#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,687 INFO L290 TraceCheckUtils]: 16: Hoare triple {45341#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 12:30:58,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {45341#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:58,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {45390#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:58,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {45390#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 12:30:58,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {45390#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:58,689 INFO L290 TraceCheckUtils]: 21: Hoare triple {45400#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:58,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {45400#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 12:30:58,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {45400#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,691 INFO L290 TraceCheckUtils]: 24: Hoare triple {45410#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,691 INFO L272 TraceCheckUtils]: 25: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,691 INFO L290 TraceCheckUtils]: 26: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,692 INFO L290 TraceCheckUtils]: 27: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,692 INFO L290 TraceCheckUtils]: 28: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,692 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #98#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,693 INFO L272 TraceCheckUtils]: 30: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,693 INFO L290 TraceCheckUtils]: 31: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,694 INFO L290 TraceCheckUtils]: 32: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,694 INFO L290 TraceCheckUtils]: 33: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,694 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #100#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,695 INFO L272 TraceCheckUtils]: 35: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,695 INFO L290 TraceCheckUtils]: 36: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,695 INFO L290 TraceCheckUtils]: 37: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,696 INFO L290 TraceCheckUtils]: 38: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,696 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #102#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,697 INFO L272 TraceCheckUtils]: 40: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,697 INFO L290 TraceCheckUtils]: 41: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,697 INFO L290 TraceCheckUtils]: 42: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,698 INFO L290 TraceCheckUtils]: 43: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,698 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #104#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,698 INFO L290 TraceCheckUtils]: 45: Hoare triple {45410#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,699 INFO L290 TraceCheckUtils]: 46: Hoare triple {45410#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 12:30:58,699 INFO L290 TraceCheckUtils]: 47: Hoare triple {45410#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:58,699 INFO L290 TraceCheckUtils]: 48: Hoare triple {45483#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:58,700 INFO L290 TraceCheckUtils]: 49: Hoare triple {45483#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45483#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:58,700 INFO L290 TraceCheckUtils]: 50: Hoare triple {45483#(<= ~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; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 12:30:58,700 INFO L290 TraceCheckUtils]: 51: Hoare triple {45483#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:58,701 INFO L290 TraceCheckUtils]: 52: Hoare triple {45496#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:58,701 INFO L290 TraceCheckUtils]: 53: Hoare triple {45496#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 12:30:58,702 INFO L290 TraceCheckUtils]: 54: Hoare triple {45496#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:58,702 INFO L290 TraceCheckUtils]: 55: Hoare triple {45506#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:58,702 INFO L290 TraceCheckUtils]: 56: Hoare triple {45506#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 57: Hoare triple {45506#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45516#(<= |main_#t~post8| 6)} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 58: Hoare triple {45516#(<= |main_#t~post8| 6)} assume !(#t~post8 < 50);havoc #t~post8; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 50);havoc #t~post7; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#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; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 50);havoc #t~post6; {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#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)); {45334#false} is VALID [2022-04-28 12:30:58,703 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 12:30:58,704 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 12:30:58,704 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 12:30:58,704 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:58,704 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#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)); {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 50);havoc #t~post6; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#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; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 50);havoc #t~post7; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 12:30:59,054 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 12:30:59,055 INFO L290 TraceCheckUtils]: 58: Hoare triple {45580#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {45334#false} is VALID [2022-04-28 12:30:59,055 INFO L290 TraceCheckUtils]: 57: Hoare triple {45584#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45580#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:30:59,055 INFO L290 TraceCheckUtils]: 56: Hoare triple {45584#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45584#(< ~counter~0 50)} is VALID [2022-04-28 12:30:59,056 INFO L290 TraceCheckUtils]: 55: Hoare triple {45584#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {45584#(< ~counter~0 50)} is VALID [2022-04-28 12:30:59,057 INFO L290 TraceCheckUtils]: 54: Hoare triple {45594#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45584#(< ~counter~0 50)} is VALID [2022-04-28 12:30:59,057 INFO L290 TraceCheckUtils]: 53: Hoare triple {45594#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45594#(< ~counter~0 49)} is VALID [2022-04-28 12:30:59,057 INFO L290 TraceCheckUtils]: 52: Hoare triple {45594#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {45594#(< ~counter~0 49)} is VALID [2022-04-28 12:30:59,058 INFO L290 TraceCheckUtils]: 51: Hoare triple {45604#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45594#(< ~counter~0 49)} is VALID [2022-04-28 12:30:59,058 INFO L290 TraceCheckUtils]: 50: Hoare triple {45604#(< ~counter~0 48)} ~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; {45604#(< ~counter~0 48)} is VALID [2022-04-28 12:30:59,058 INFO L290 TraceCheckUtils]: 49: Hoare triple {45604#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {45604#(< ~counter~0 48)} is VALID [2022-04-28 12:30:59,059 INFO L290 TraceCheckUtils]: 48: Hoare triple {45604#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {45604#(< ~counter~0 48)} is VALID [2022-04-28 12:30:59,059 INFO L290 TraceCheckUtils]: 47: Hoare triple {45617#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45604#(< ~counter~0 48)} is VALID [2022-04-28 12:30:59,059 INFO L290 TraceCheckUtils]: 46: Hoare triple {45617#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,060 INFO L290 TraceCheckUtils]: 45: Hoare triple {45617#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,060 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #104#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,060 INFO L290 TraceCheckUtils]: 43: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 12:30:59,060 INFO L290 TraceCheckUtils]: 42: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 12:30:59,060 INFO L290 TraceCheckUtils]: 41: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 12:30:59,061 INFO L272 TraceCheckUtils]: 40: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 12:30:59,061 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #102#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,061 INFO L290 TraceCheckUtils]: 38: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 12:30:59,061 INFO L290 TraceCheckUtils]: 37: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 12:30:59,061 INFO L290 TraceCheckUtils]: 36: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 12:30:59,061 INFO L272 TraceCheckUtils]: 35: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 12:30:59,062 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #100#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,062 INFO L290 TraceCheckUtils]: 33: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 12:30:59,062 INFO L290 TraceCheckUtils]: 32: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 12:30:59,062 INFO L290 TraceCheckUtils]: 31: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 12:30:59,062 INFO L272 TraceCheckUtils]: 30: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 12:30:59,063 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45333#true} {45617#(< ~counter~0 47)} #98#return; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,063 INFO L290 TraceCheckUtils]: 28: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 12:30:59,063 INFO L290 TraceCheckUtils]: 27: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 12:30:59,063 INFO L290 TraceCheckUtils]: 26: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 12:30:59,063 INFO L272 TraceCheckUtils]: 25: Hoare triple {45617#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 12:30:59,063 INFO L290 TraceCheckUtils]: 24: Hoare triple {45617#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {45690#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45617#(< ~counter~0 47)} is VALID [2022-04-28 12:30:59,064 INFO L290 TraceCheckUtils]: 22: Hoare triple {45690#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45690#(< ~counter~0 46)} is VALID [2022-04-28 12:30:59,064 INFO L290 TraceCheckUtils]: 21: Hoare triple {45690#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {45690#(< ~counter~0 46)} is VALID [2022-04-28 12:30:59,065 INFO L290 TraceCheckUtils]: 20: Hoare triple {45700#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45690#(< ~counter~0 46)} is VALID [2022-04-28 12:30:59,065 INFO L290 TraceCheckUtils]: 19: Hoare triple {45700#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45700#(< ~counter~0 45)} is VALID [2022-04-28 12:30:59,066 INFO L290 TraceCheckUtils]: 18: Hoare triple {45700#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {45700#(< ~counter~0 45)} is VALID [2022-04-28 12:30:59,066 INFO L290 TraceCheckUtils]: 17: Hoare triple {45710#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45700#(< ~counter~0 45)} is VALID [2022-04-28 12:30:59,066 INFO L290 TraceCheckUtils]: 16: Hoare triple {45710#(< ~counter~0 44)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,067 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45333#true} {45710#(< ~counter~0 44)} #96#return; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,067 INFO L290 TraceCheckUtils]: 14: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 12:30:59,067 INFO L290 TraceCheckUtils]: 13: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 12:30:59,067 INFO L290 TraceCheckUtils]: 12: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 12:30:59,067 INFO L272 TraceCheckUtils]: 11: Hoare triple {45710#(< ~counter~0 44)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 12:30:59,068 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45333#true} {45710#(< ~counter~0 44)} #94#return; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,068 INFO L290 TraceCheckUtils]: 9: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 12:30:59,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 12:30:59,068 INFO L290 TraceCheckUtils]: 7: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 12:30:59,068 INFO L272 TraceCheckUtils]: 6: Hoare triple {45710#(< ~counter~0 44)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 12:30:59,068 INFO L290 TraceCheckUtils]: 5: Hoare triple {45710#(< ~counter~0 44)} 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; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,068 INFO L272 TraceCheckUtils]: 4: Hoare triple {45710#(< ~counter~0 44)} call #t~ret9 := main(); {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,069 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45710#(< ~counter~0 44)} {45333#true} #108#return; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {45710#(< ~counter~0 44)} assume true; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#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; {45710#(< ~counter~0 44)} is VALID [2022-04-28 12:30:59,070 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 12:30:59,070 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:30:59,070 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:30:59,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1830859793] [2022-04-28 12:30:59,070 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:30:59,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1641144187] [2022-04-28 12:30:59,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1641144187] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:30:59,070 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:30:59,070 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 12:30:59,070 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:30:59,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [312643141] [2022-04-28 12:30:59,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [312643141] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:30:59,071 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:30:59,071 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 12:30:59,071 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1014863312] [2022-04-28 12:30:59,071 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:30:59,072 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 12:30:59,072 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:30:59,072 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:30:59,113 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-28 12:30:59,113 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 12:30:59,113 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:30:59,113 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 12:30:59,113 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 12:30:59,113 INFO L87 Difference]: Start difference. First operand 568 states and 779 transitions. Second operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:00,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:00,946 INFO L93 Difference]: Finished difference Result 914 states and 1304 transitions. [2022-04-28 12:31:00,946 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 12:31:00,947 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 12:31:00,947 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:31:00,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:00,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 12:31:00,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:00,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 12:31:00,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 181 transitions. [2022-04-28 12:31:01,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:01,097 INFO L225 Difference]: With dead ends: 914 [2022-04-28 12:31:01,097 INFO L226 Difference]: Without dead ends: 584 [2022-04-28 12:31:01,098 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=185, Invalid=277, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:31:01,098 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 86 mSDsluCounter, 215 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:31:01,099 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 276 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:31:01,099 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 584 states. [2022-04-28 12:31:01,952 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 584 to 575. [2022-04-28 12:31:01,952 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:31:01,953 INFO L82 GeneralOperation]: Start isEquivalent. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:31:01,953 INFO L74 IsIncluded]: Start isIncluded. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:31:01,953 INFO L87 Difference]: Start difference. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:31:01,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:01,966 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 12:31:01,966 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 12:31:01,967 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:01,967 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:01,968 INFO L74 IsIncluded]: Start isIncluded. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 12:31:01,968 INFO L87 Difference]: Start difference. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 12:31:01,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:01,981 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 12:31:01,981 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 12:31:01,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:01,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:01,982 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:31:01,982 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:31:01,983 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 12:31:02,000 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 575 states to 575 states and 786 transitions. [2022-04-28 12:31:02,000 INFO L78 Accepts]: Start accepts. Automaton has 575 states and 786 transitions. Word has length 69 [2022-04-28 12:31:02,000 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:31:02,000 INFO L495 AbstractCegarLoop]: Abstraction has 575 states and 786 transitions. [2022-04-28 12:31:02,000 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:02,000 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 575 states and 786 transitions. [2022-04-28 12:31:03,009 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 786 edges. 786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:03,010 INFO L276 IsEmpty]: Start isEmpty. Operand 575 states and 786 transitions. [2022-04-28 12:31:03,010 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 12:31:03,010 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:31:03,010 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:31:03,026 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-28 12:31:03,226 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-28 12:31:03,226 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:31:03,226 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:31:03,226 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 3 times [2022-04-28 12:31:03,226 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:31:03,226 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [344973720] [2022-04-28 12:31:03,227 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:31:03,227 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 4 times [2022-04-28 12:31:03,227 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:31:03,227 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [419603765] [2022-04-28 12:31:03,227 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:31:03,227 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:31:03,242 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:31:03,242 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [706462457] [2022-04-28 12:31:03,243 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:31:03,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:31:03,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:31:03,243 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-28 12:31:03,244 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-28 12:31:03,293 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:31:03,293 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:31:03,294 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 12:31:03,307 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:31:03,309 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:31:03,666 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 12:31:03,666 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#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; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,667 INFO L290 TraceCheckUtils]: 2: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,667 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49926#(<= ~counter~0 0)} {49918#true} #108#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,667 INFO L272 TraceCheckUtils]: 4: Hoare triple {49926#(<= ~counter~0 0)} call #t~ret9 := main(); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,668 INFO L290 TraceCheckUtils]: 5: Hoare triple {49926#(<= ~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; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,668 INFO L272 TraceCheckUtils]: 6: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,668 INFO L290 TraceCheckUtils]: 7: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,669 INFO L290 TraceCheckUtils]: 9: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,669 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #94#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,670 INFO L272 TraceCheckUtils]: 11: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,670 INFO L290 TraceCheckUtils]: 12: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,670 INFO L290 TraceCheckUtils]: 13: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,670 INFO L290 TraceCheckUtils]: 14: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,671 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #96#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,671 INFO L290 TraceCheckUtils]: 16: Hoare triple {49926#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 12:31:03,672 INFO L290 TraceCheckUtils]: 17: Hoare triple {49926#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 12:31:03,672 INFO L290 TraceCheckUtils]: 18: Hoare triple {49975#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 12:31:03,673 INFO L290 TraceCheckUtils]: 19: Hoare triple {49975#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 12:31:03,673 INFO L290 TraceCheckUtils]: 20: Hoare triple {49975#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 12:31:03,674 INFO L290 TraceCheckUtils]: 21: Hoare triple {49985#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 12:31:03,674 INFO L290 TraceCheckUtils]: 22: Hoare triple {49985#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49985#(<= ~counter~0 2)} is VALID [2022-04-28 12:31:03,674 INFO L290 TraceCheckUtils]: 23: Hoare triple {49985#(<= ~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; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 12:31:03,675 INFO L290 TraceCheckUtils]: 24: Hoare triple {49985#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 12:31:03,675 INFO L290 TraceCheckUtils]: 25: Hoare triple {49998#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 12:31:03,675 INFO L290 TraceCheckUtils]: 26: Hoare triple {49998#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 12:31:03,676 INFO L290 TraceCheckUtils]: 27: Hoare triple {49998#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 12:31:03,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {50008#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 12:31:03,676 INFO L290 TraceCheckUtils]: 29: Hoare triple {50008#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 12:31:03,677 INFO L290 TraceCheckUtils]: 30: Hoare triple {50008#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,677 INFO L290 TraceCheckUtils]: 31: Hoare triple {50018#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,678 INFO L272 TraceCheckUtils]: 32: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,678 INFO L290 TraceCheckUtils]: 33: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,678 INFO L290 TraceCheckUtils]: 34: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,679 INFO L290 TraceCheckUtils]: 35: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,679 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #98#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,680 INFO L272 TraceCheckUtils]: 37: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,680 INFO L290 TraceCheckUtils]: 38: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,680 INFO L290 TraceCheckUtils]: 39: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,680 INFO L290 TraceCheckUtils]: 40: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,681 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #100#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,681 INFO L272 TraceCheckUtils]: 42: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,682 INFO L290 TraceCheckUtils]: 43: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,682 INFO L290 TraceCheckUtils]: 44: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,682 INFO L290 TraceCheckUtils]: 45: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,683 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #102#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,683 INFO L272 TraceCheckUtils]: 47: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,684 INFO L290 TraceCheckUtils]: 48: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,684 INFO L290 TraceCheckUtils]: 49: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,684 INFO L290 TraceCheckUtils]: 50: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,685 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #104#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,685 INFO L290 TraceCheckUtils]: 52: Hoare triple {50018#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,685 INFO L290 TraceCheckUtils]: 53: Hoare triple {50018#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 12:31:03,686 INFO L290 TraceCheckUtils]: 54: Hoare triple {50018#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 12:31:03,686 INFO L290 TraceCheckUtils]: 55: Hoare triple {50091#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 12:31:03,686 INFO L290 TraceCheckUtils]: 56: Hoare triple {50091#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {50091#(<= ~counter~0 6)} is VALID [2022-04-28 12:31:03,687 INFO L290 TraceCheckUtils]: 57: Hoare triple {50091#(<= ~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; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 12:31:03,687 INFO L290 TraceCheckUtils]: 58: Hoare triple {50091#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 12:31:03,687 INFO L290 TraceCheckUtils]: 59: Hoare triple {50104#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 12:31:03,688 INFO L290 TraceCheckUtils]: 60: Hoare triple {50104#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 12:31:03,688 INFO L290 TraceCheckUtils]: 61: Hoare triple {50104#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50114#(<= |main_#t~post7| 7)} is VALID [2022-04-28 12:31:03,688 INFO L290 TraceCheckUtils]: 62: Hoare triple {50114#(<= |main_#t~post7| 7)} assume !(#t~post7 < 50);havoc #t~post7; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#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; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 50);havoc #t~post6; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#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)); {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 12:31:03,689 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:31:03,689 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:31:04,064 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 12:31:04,064 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 12:31:04,064 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 12:31:04,065 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#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)); {49919#false} is VALID [2022-04-28 12:31:04,065 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 50);havoc #t~post6; {49919#false} is VALID [2022-04-28 12:31:04,065 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 12:31:04,065 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#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; {49919#false} is VALID [2022-04-28 12:31:04,065 INFO L290 TraceCheckUtils]: 62: Hoare triple {50160#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {49919#false} is VALID [2022-04-28 12:31:04,065 INFO L290 TraceCheckUtils]: 61: Hoare triple {50164#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50160#(< |main_#t~post7| 50)} is VALID [2022-04-28 12:31:04,066 INFO L290 TraceCheckUtils]: 60: Hoare triple {50164#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50164#(< ~counter~0 50)} is VALID [2022-04-28 12:31:04,066 INFO L290 TraceCheckUtils]: 59: Hoare triple {50164#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {50164#(< ~counter~0 50)} is VALID [2022-04-28 12:31:04,067 INFO L290 TraceCheckUtils]: 58: Hoare triple {50174#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50164#(< ~counter~0 50)} is VALID [2022-04-28 12:31:04,067 INFO L290 TraceCheckUtils]: 57: Hoare triple {50174#(< ~counter~0 49)} ~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; {50174#(< ~counter~0 49)} is VALID [2022-04-28 12:31:04,067 INFO L290 TraceCheckUtils]: 56: Hoare triple {50174#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {50174#(< ~counter~0 49)} is VALID [2022-04-28 12:31:04,068 INFO L290 TraceCheckUtils]: 55: Hoare triple {50174#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {50174#(< ~counter~0 49)} is VALID [2022-04-28 12:31:04,068 INFO L290 TraceCheckUtils]: 54: Hoare triple {50187#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50174#(< ~counter~0 49)} is VALID [2022-04-28 12:31:04,069 INFO L290 TraceCheckUtils]: 53: Hoare triple {50187#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,069 INFO L290 TraceCheckUtils]: 52: Hoare triple {50187#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,069 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #104#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,069 INFO L290 TraceCheckUtils]: 50: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L290 TraceCheckUtils]: 49: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L290 TraceCheckUtils]: 48: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L272 TraceCheckUtils]: 47: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #102#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,070 INFO L290 TraceCheckUtils]: 45: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L290 TraceCheckUtils]: 44: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L290 TraceCheckUtils]: 43: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 12:31:04,070 INFO L272 TraceCheckUtils]: 42: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 12:31:04,071 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #100#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,071 INFO L290 TraceCheckUtils]: 40: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 12:31:04,071 INFO L290 TraceCheckUtils]: 39: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 12:31:04,071 INFO L290 TraceCheckUtils]: 38: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 12:31:04,071 INFO L272 TraceCheckUtils]: 37: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 12:31:04,072 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49918#true} {50187#(< ~counter~0 48)} #98#return; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,072 INFO L290 TraceCheckUtils]: 35: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 12:31:04,072 INFO L290 TraceCheckUtils]: 34: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 12:31:04,072 INFO L290 TraceCheckUtils]: 33: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 12:31:04,072 INFO L272 TraceCheckUtils]: 32: Hoare triple {50187#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 12:31:04,072 INFO L290 TraceCheckUtils]: 31: Hoare triple {50187#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,073 INFO L290 TraceCheckUtils]: 30: Hoare triple {50260#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50187#(< ~counter~0 48)} is VALID [2022-04-28 12:31:04,073 INFO L290 TraceCheckUtils]: 29: Hoare triple {50260#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50260#(< ~counter~0 47)} is VALID [2022-04-28 12:31:04,073 INFO L290 TraceCheckUtils]: 28: Hoare triple {50260#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {50260#(< ~counter~0 47)} is VALID [2022-04-28 12:31:04,074 INFO L290 TraceCheckUtils]: 27: Hoare triple {50270#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50260#(< ~counter~0 47)} is VALID [2022-04-28 12:31:04,074 INFO L290 TraceCheckUtils]: 26: Hoare triple {50270#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50270#(< ~counter~0 46)} is VALID [2022-04-28 12:31:04,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {50270#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {50270#(< ~counter~0 46)} is VALID [2022-04-28 12:31:04,075 INFO L290 TraceCheckUtils]: 24: Hoare triple {50280#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50270#(< ~counter~0 46)} is VALID [2022-04-28 12:31:04,075 INFO L290 TraceCheckUtils]: 23: Hoare triple {50280#(< ~counter~0 45)} ~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; {50280#(< ~counter~0 45)} is VALID [2022-04-28 12:31:04,076 INFO L290 TraceCheckUtils]: 22: Hoare triple {50280#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {50280#(< ~counter~0 45)} is VALID [2022-04-28 12:31:04,076 INFO L290 TraceCheckUtils]: 21: Hoare triple {50280#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {50280#(< ~counter~0 45)} is VALID [2022-04-28 12:31:04,077 INFO L290 TraceCheckUtils]: 20: Hoare triple {50293#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50280#(< ~counter~0 45)} is VALID [2022-04-28 12:31:04,077 INFO L290 TraceCheckUtils]: 19: Hoare triple {50293#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50293#(< ~counter~0 44)} is VALID [2022-04-28 12:31:04,077 INFO L290 TraceCheckUtils]: 18: Hoare triple {50293#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {50293#(< ~counter~0 44)} is VALID [2022-04-28 12:31:04,078 INFO L290 TraceCheckUtils]: 17: Hoare triple {50303#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50293#(< ~counter~0 44)} is VALID [2022-04-28 12:31:04,078 INFO L290 TraceCheckUtils]: 16: Hoare triple {50303#(< ~counter~0 43)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,078 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49918#true} {50303#(< ~counter~0 43)} #96#return; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,079 INFO L290 TraceCheckUtils]: 14: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L290 TraceCheckUtils]: 13: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L290 TraceCheckUtils]: 12: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L272 TraceCheckUtils]: 11: Hoare triple {50303#(< ~counter~0 43)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49918#true} {50303#(< ~counter~0 43)} #94#return; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,079 INFO L290 TraceCheckUtils]: 9: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L290 TraceCheckUtils]: 8: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L290 TraceCheckUtils]: 7: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 12:31:04,079 INFO L272 TraceCheckUtils]: 6: Hoare triple {50303#(< ~counter~0 43)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 12:31:04,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {50303#(< ~counter~0 43)} 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; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {50303#(< ~counter~0 43)} call #t~ret9 := main(); {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,080 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50303#(< ~counter~0 43)} {49918#true} #108#return; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,081 INFO L290 TraceCheckUtils]: 2: Hoare triple {50303#(< ~counter~0 43)} assume true; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#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; {50303#(< ~counter~0 43)} is VALID [2022-04-28 12:31:04,081 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 12:31:04,081 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:31:04,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:31:04,081 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [419603765] [2022-04-28 12:31:04,082 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:31:04,082 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [706462457] [2022-04-28 12:31:04,082 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [706462457] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:31:04,082 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:31:04,082 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 12:31:04,082 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:31:04,082 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [344973720] [2022-04-28 12:31:04,082 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [344973720] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:31:04,082 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:31:04,082 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 12:31:04,082 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1790633883] [2022-04-28 12:31:04,082 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:31:04,083 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 12:31:04,083 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:31:04,083 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:04,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:04,124 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 12:31:04,124 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:31:04,125 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 12:31:04,125 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 12:31:04,125 INFO L87 Difference]: Start difference. First operand 575 states and 786 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:06,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:06,127 INFO L93 Difference]: Finished difference Result 918 states and 1274 transitions. [2022-04-28 12:31:06,128 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 12:31:06,128 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 12:31:06,128 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:31:06,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:06,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 12:31:06,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:06,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 12:31:06,131 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 210 transitions. [2022-04-28 12:31:06,231 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:06,251 INFO L225 Difference]: With dead ends: 918 [2022-04-28 12:31:06,251 INFO L226 Difference]: Without dead ends: 688 [2022-04-28 12:31:06,252 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=244, Invalid=356, Unknown=0, NotChecked=0, Total=600 [2022-04-28 12:31:06,252 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 120 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 145 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 190 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 145 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:31:06,253 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [120 Valid, 301 Invalid, 190 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 145 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:31:06,253 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 688 states. [2022-04-28 12:31:07,952 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 688 to 658. [2022-04-28 12:31:07,953 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:31:07,953 INFO L82 GeneralOperation]: Start isEquivalent. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 12:31:07,954 INFO L74 IsIncluded]: Start isIncluded. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 12:31:07,954 INFO L87 Difference]: Start difference. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 12:31:07,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:07,971 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 12:31:07,971 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 12:31:07,972 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:07,972 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:07,972 INFO L74 IsIncluded]: Start isIncluded. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 12:31:07,973 INFO L87 Difference]: Start difference. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 12:31:07,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:07,989 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 12:31:07,989 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 12:31:07,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:07,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:07,990 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:31:07,990 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:31:07,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 12:31:08,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 658 states to 658 states and 880 transitions. [2022-04-28 12:31:08,013 INFO L78 Accepts]: Start accepts. Automaton has 658 states and 880 transitions. Word has length 70 [2022-04-28 12:31:08,013 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:31:08,013 INFO L495 AbstractCegarLoop]: Abstraction has 658 states and 880 transitions. [2022-04-28 12:31:08,013 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:31:08,013 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 658 states and 880 transitions. [2022-04-28 12:31:09,393 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 880 edges. 880 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:09,393 INFO L276 IsEmpty]: Start isEmpty. Operand 658 states and 880 transitions. [2022-04-28 12:31:09,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 12:31:09,394 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:31:09,394 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:31:09,412 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-28 12:31:09,594 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-28 12:31:09,594 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:31:09,595 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:31:09,595 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 1 times [2022-04-28 12:31:09,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:31:09,595 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1904411035] [2022-04-28 12:31:09,595 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:31:09,595 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 2 times [2022-04-28 12:31:09,595 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:31:09,595 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1453785482] [2022-04-28 12:31:09,595 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:31:09,595 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:31:09,605 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:31:09,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1038663462] [2022-04-28 12:31:09,605 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:31:09,605 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:31:09,605 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:31:09,606 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-28 12:31:09,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-28 12:31:09,656 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:31:09,656 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:31:09,657 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 12:31:09,664 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:31:09,665 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:31:09,809 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 12:31:09,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 12:31:09,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:09,809 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 12:31:09,809 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 12:31:09,809 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 12:31:09,810 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 50);havoc #t~post8; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:09,811 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:09,812 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 12:31:09,812 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:09,812 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:09,812 INFO L290 TraceCheckUtils]: 39: Hoare triple {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:09,812 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:09,813 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,813 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 12:31:09,813 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:09,813 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:09,813 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:09,813 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,814 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 12:31:09,814 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:09,814 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:09,814 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:09,814 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,814 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,815 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= 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; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,815 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,815 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,816 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:09,816 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,816 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,817 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,817 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,817 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,817 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,818 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,818 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,818 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:09,819 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= 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)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:31:09,819 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:09,819 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 12:31:09,819 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 12:31:09,819 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 12:31:09,820 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:31:19,411 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 12:31:19,412 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 12:31:19,412 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:19,413 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= 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)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:31:19,413 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,413 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,414 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,414 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,414 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,415 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,415 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,415 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,416 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= 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; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:19,416 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,416 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,417 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,417 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= 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; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,418 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,418 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,418 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:19,418 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:19,418 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:19,418 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 12:31:19,419 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,419 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:19,419 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:19,419 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:19,419 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= 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)); {54895#true} is VALID [2022-04-28 12:31:19,420 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:19,420 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:19,420 INFO L290 TraceCheckUtils]: 39: Hoare triple {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:31:19,421 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 50);havoc #t~post8; {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 12:31:19,421 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 50);havoc #t~post7; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 50);havoc #t~post6; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 12:31:19,422 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#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; {54895#true} is VALID [2022-04-28 12:31:19,423 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 12:31:19,424 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 12:31:19,424 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:31:19,424 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1453785482] [2022-04-28 12:31:19,424 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:31:19,424 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1038663462] [2022-04-28 12:31:19,424 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1038663462] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:31:19,424 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:31:19,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 12:31:19,424 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:31:19,424 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1904411035] [2022-04-28 12:31:19,424 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1904411035] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:31:19,424 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:31:19,424 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:31:19,425 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1315904789] [2022-04-28 12:31:19,425 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:31:19,425 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 12:31:19,425 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:31:19,425 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:31:19,466 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-28 12:31:19,467 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:31:19,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:31:19,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:31:19,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:31:19,467 INFO L87 Difference]: Start difference. First operand 658 states and 880 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:31:21,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:21,762 INFO L93 Difference]: Finished difference Result 757 states and 1022 transitions. [2022-04-28 12:31:21,762 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 12:31:21,762 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 12:31:21,762 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:31:21,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:31:21,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 12:31:21,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:31:21,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 12:31:21,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 85 transitions. [2022-04-28 12:31:21,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:21,867 INFO L225 Difference]: With dead ends: 757 [2022-04-28 12:31:21,867 INFO L226 Difference]: Without dead ends: 755 [2022-04-28 12:31:21,867 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 132 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 12:31:21,868 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 30 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 212 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:31:21,871 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 212 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:31:21,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 755 states. [2022-04-28 12:31:24,083 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 755 to 748. [2022-04-28 12:31:24,084 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:31:24,085 INFO L82 GeneralOperation]: Start isEquivalent. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 12:31:24,085 INFO L74 IsIncluded]: Start isIncluded. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 12:31:24,086 INFO L87 Difference]: Start difference. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 12:31:24,104 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:24,104 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 12:31:24,104 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 12:31:24,105 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:24,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:24,106 INFO L74 IsIncluded]: Start isIncluded. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 12:31:24,106 INFO L87 Difference]: Start difference. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 12:31:24,125 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:24,125 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 12:31:24,125 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 12:31:24,126 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:24,126 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:24,126 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:31:24,126 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:31:24,127 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 12:31:24,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 748 states to 748 states and 1013 transitions. [2022-04-28 12:31:24,154 INFO L78 Accepts]: Start accepts. Automaton has 748 states and 1013 transitions. Word has length 70 [2022-04-28 12:31:24,154 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:31:24,154 INFO L495 AbstractCegarLoop]: Abstraction has 748 states and 1013 transitions. [2022-04-28 12:31:24,154 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:31:24,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 748 states and 1013 transitions. [2022-04-28 12:31:25,789 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1013 edges. 1013 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:25,789 INFO L276 IsEmpty]: Start isEmpty. Operand 748 states and 1013 transitions. [2022-04-28 12:31:25,790 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 12:31:25,790 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:31:25,790 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-28 12:31:25,806 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-28 12:31:25,990 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-28 12:31:25,990 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:31:25,991 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:31:25,991 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 3 times [2022-04-28 12:31:25,991 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:31:25,991 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2022099869] [2022-04-28 12:31:25,991 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:31:25,991 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 4 times [2022-04-28 12:31:25,991 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:31:25,991 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [184676519] [2022-04-28 12:31:25,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:31:25,992 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:31:26,001 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:31:26,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1924578509] [2022-04-28 12:31:26,001 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:31:26,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:31:26,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:31:26,002 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-28 12:31:26,005 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-28 12:31:26,051 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:31:26,051 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:31:26,052 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 12:31:26,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:31:26,064 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:31:26,761 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#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; {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#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; {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:26,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 12:31:26,762 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,762 INFO L290 TraceCheckUtils]: 17: Hoare triple {59903#(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; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {59903#(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 < 50);havoc #t~post6; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,763 INFO L290 TraceCheckUtils]: 19: Hoare triple {59903#(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; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,763 INFO L290 TraceCheckUtils]: 20: Hoare triple {59913#(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; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,764 INFO L290 TraceCheckUtils]: 21: Hoare triple {59913#(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 < 50);havoc #t~post7; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,764 INFO L290 TraceCheckUtils]: 22: Hoare triple {59913#(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); {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:31:26,764 INFO L290 TraceCheckUtils]: 23: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,765 INFO L290 TraceCheckUtils]: 24: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,765 INFO L290 TraceCheckUtils]: 25: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,765 INFO L290 TraceCheckUtils]: 26: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,765 INFO L290 TraceCheckUtils]: 27: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,766 INFO L290 TraceCheckUtils]: 28: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,766 INFO L290 TraceCheckUtils]: 29: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,766 INFO L290 TraceCheckUtils]: 30: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,767 INFO L290 TraceCheckUtils]: 31: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,767 INFO L272 TraceCheckUtils]: 32: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:26,767 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:26,767 INFO L290 TraceCheckUtils]: 34: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:26,767 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:26,768 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {59970#(and (= main_~b~0 main_~v~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) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:26,768 INFO L272 TraceCheckUtils]: 37: Hoare triple {59970#(and (= main_~b~0 main_~v~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) (= 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)); {59850#true} is VALID [2022-04-28 12:31:26,768 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:26,769 INFO L290 TraceCheckUtils]: 39: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:26,769 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:26,769 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59970#(and (= main_~b~0 main_~v~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) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:26,770 INFO L272 TraceCheckUtils]: 42: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:26,770 INFO L272 TraceCheckUtils]: 47: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:26,770 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:26,771 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:26,771 INFO L290 TraceCheckUtils]: 52: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:26,772 INFO L290 TraceCheckUtils]: 53: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,772 INFO L290 TraceCheckUtils]: 54: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,773 INFO L290 TraceCheckUtils]: 55: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,773 INFO L290 TraceCheckUtils]: 56: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:31:26,773 INFO L290 TraceCheckUtils]: 57: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,774 INFO L290 TraceCheckUtils]: 58: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,774 INFO L290 TraceCheckUtils]: 59: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post6 < 50);havoc #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,774 INFO L290 TraceCheckUtils]: 60: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,774 INFO L290 TraceCheckUtils]: 61: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,775 INFO L290 TraceCheckUtils]: 62: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post7 < 50);havoc #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,775 INFO L290 TraceCheckUtils]: 63: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,775 INFO L290 TraceCheckUtils]: 64: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,775 INFO L290 TraceCheckUtils]: 65: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post8 < 50);havoc #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,776 INFO L272 TraceCheckUtils]: 66: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:26,776 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:26,776 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:26,776 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:26,776 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #98#return; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 12:31:26,777 INFO L272 TraceCheckUtils]: 71: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:31:26,777 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:26,777 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 12:31:26,777 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 12:31:26,778 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 8 proven. 52 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-28 12:31:26,778 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:31:50,765 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 12:31:50,766 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 12:31:50,766 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:31:50,767 INFO L272 TraceCheckUtils]: 71: Hoare triple {60099#(= 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)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:31:50,767 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,767 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:50,767 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:50,767 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:50,768 INFO L272 TraceCheckUtils]: 66: Hoare triple {60099#(= 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)); {59850#true} is VALID [2022-04-28 12:31:50,768 INFO L290 TraceCheckUtils]: 65: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,768 INFO L290 TraceCheckUtils]: 64: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,769 INFO L290 TraceCheckUtils]: 63: Hoare triple {60099#(= 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,769 INFO L290 TraceCheckUtils]: 62: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,769 INFO L290 TraceCheckUtils]: 61: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,770 INFO L290 TraceCheckUtils]: 60: Hoare triple {60099#(= 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; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,770 INFO L290 TraceCheckUtils]: 59: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 50);havoc #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:50,770 INFO L290 TraceCheckUtils]: 58: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:52,655 INFO L290 TraceCheckUtils]: 57: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:31:52,656 INFO L290 TraceCheckUtils]: 56: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 12:31:52,657 INFO L290 TraceCheckUtils]: 55: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 12:31:52,657 INFO L290 TraceCheckUtils]: 54: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 12:31:53,292 INFO L290 TraceCheckUtils]: 53: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 12:31:53,293 INFO L290 TraceCheckUtils]: 52: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:53,294 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #104#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:53,294 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:53,294 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:53,294 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:53,294 INFO L272 TraceCheckUtils]: 47: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:53,295 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #102#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:53,295 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:53,295 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:53,295 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:53,295 INFO L272 TraceCheckUtils]: 42: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:53,296 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #100#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:31:53,296 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:53,297 INFO L290 TraceCheckUtils]: 39: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:53,297 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:31:53,297 INFO L272 TraceCheckUtils]: 37: Hoare triple {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:53,298 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #98#return; {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:31:53,298 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:53,299 INFO L290 TraceCheckUtils]: 34: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:31:53,299 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:31:53,299 INFO L272 TraceCheckUtils]: 32: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:53,299 INFO L290 TraceCheckUtils]: 31: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post8 < 50);havoc #t~post8; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:31:53,300 INFO L290 TraceCheckUtils]: 30: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:31:53,300 INFO L290 TraceCheckUtils]: 29: Hoare triple {60231#(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_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:31:53,301 INFO L290 TraceCheckUtils]: 28: Hoare triple {60231#(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_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {60231#(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_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:53,301 INFO L290 TraceCheckUtils]: 27: Hoare triple {60231#(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_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60231#(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_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 26: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60231#(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_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 25: Hoare triple {59850#true} assume !!(#t~post6 < 50);havoc #t~post6; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 24: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 23: Hoare triple {59850#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; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 22: Hoare triple {59850#true} assume !(~c~0 >= ~b~0); {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {59850#true} assume !!(#t~post7 < 50);havoc #t~post7; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 20: Hoare triple {59850#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 19: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 18: Hoare triple {59850#true} assume !!(#t~post6 < 50);havoc #t~post6; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 17: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 12:31:53,303 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#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; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#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; {59850#true} is VALID [2022-04-28 12:31:53,304 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 12:31:53,305 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 27 proven. 30 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-28 12:31:53,305 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:31:53,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [184676519] [2022-04-28 12:31:53,305 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:31:53,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1924578509] [2022-04-28 12:31:53,305 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1924578509] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:31:53,305 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:31:53,305 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 12] total 22 [2022-04-28 12:31:53,305 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:31:53,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2022099869] [2022-04-28 12:31:53,305 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2022099869] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:31:53,306 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:31:53,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 12:31:53,306 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [214731212] [2022-04-28 12:31:53,306 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:31:53,306 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 12:31:53,306 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:31:53,306 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 12:31:53,363 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:53,364 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 12:31:53,364 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:31:53,364 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 12:31:53,364 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=379, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:31:53,364 INFO L87 Difference]: Start difference. First operand 748 states and 1013 transitions. Second operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 12:31:56,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:56,823 INFO L93 Difference]: Finished difference Result 840 states and 1136 transitions. [2022-04-28 12:31:56,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:31:56,823 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 12:31:56,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:31:56,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 12:31:56,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 12:31:56,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 12:31:56,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 12:31:56,826 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 172 transitions. [2022-04-28 12:31:56,951 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:56,981 INFO L225 Difference]: With dead ends: 840 [2022-04-28 12:31:56,981 INFO L226 Difference]: Without dead ends: 838 [2022-04-28 12:31:56,981 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=110, Invalid=540, Unknown=0, NotChecked=0, Total=650 [2022-04-28 12:31:56,982 INFO L413 NwaCegarLoop]: 62 mSDtfsCounter, 81 mSDsluCounter, 468 mSDsCounter, 0 mSdLazyCounter, 724 mSolverCounterSat, 44 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 530 SdHoareTripleChecker+Invalid, 768 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 44 IncrementalHoareTripleChecker+Valid, 724 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 12:31:56,983 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [100 Valid, 530 Invalid, 768 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [44 Valid, 724 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 12:31:56,983 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 838 states. [2022-04-28 12:31:58,258 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 838 to 813. [2022-04-28 12:31:58,258 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:31:58,259 INFO L82 GeneralOperation]: Start isEquivalent. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 12:31:58,260 INFO L74 IsIncluded]: Start isIncluded. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 12:31:58,260 INFO L87 Difference]: Start difference. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 12:31:58,284 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:58,284 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 12:31:58,284 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 12:31:58,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:58,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:58,287 INFO L74 IsIncluded]: Start isIncluded. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 12:31:58,287 INFO L87 Difference]: Start difference. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 12:31:58,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:31:58,318 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 12:31:58,318 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 12:31:58,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:31:58,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:31:58,319 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:31:58,319 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:31:58,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 12:31:58,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 813 states to 813 states and 1106 transitions. [2022-04-28 12:31:58,354 INFO L78 Accepts]: Start accepts. Automaton has 813 states and 1106 transitions. Word has length 75 [2022-04-28 12:31:58,354 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:31:58,354 INFO L495 AbstractCegarLoop]: Abstraction has 813 states and 1106 transitions. [2022-04-28 12:31:58,354 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 12:31:58,354 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 813 states and 1106 transitions. [2022-04-28 12:31:59,877 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1106 edges. 1106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:31:59,877 INFO L276 IsEmpty]: Start isEmpty. Operand 813 states and 1106 transitions. [2022-04-28 12:31:59,877 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2022-04-28 12:31:59,877 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:31:59,877 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 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] [2022-04-28 12:31:59,894 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-28 12:32:00,093 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-28 12:32:00,093 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:32:00,094 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:32:00,094 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 5 times [2022-04-28 12:32:00,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:00,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2115278744] [2022-04-28 12:32:00,094 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:32:00,094 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 6 times [2022-04-28 12:32:00,094 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:32:00,094 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1169784776] [2022-04-28 12:32:00,095 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:32:00,095 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:32:00,119 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:32:00,119 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [893910358] [2022-04-28 12:32:00,119 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:32:00,119 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:32:00,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:32:00,123 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:32:00,125 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-28 12:32:00,179 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 12:32:00,179 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:32:00,180 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 12:32:00,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:32:00,190 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:32:00,393 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 12:32:00,393 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#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; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,393 INFO L290 TraceCheckUtils]: 2: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,394 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65319#(<= ~counter~0 0)} {65311#true} #108#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,394 INFO L272 TraceCheckUtils]: 4: Hoare triple {65319#(<= ~counter~0 0)} call #t~ret9 := main(); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,394 INFO L290 TraceCheckUtils]: 5: Hoare triple {65319#(<= ~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; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,394 INFO L272 TraceCheckUtils]: 6: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,394 INFO L290 TraceCheckUtils]: 7: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,395 INFO L290 TraceCheckUtils]: 8: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,395 INFO L290 TraceCheckUtils]: 9: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,395 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #94#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,395 INFO L272 TraceCheckUtils]: 11: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,395 INFO L290 TraceCheckUtils]: 12: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,396 INFO L290 TraceCheckUtils]: 13: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,396 INFO L290 TraceCheckUtils]: 14: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,396 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #96#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,396 INFO L290 TraceCheckUtils]: 16: Hoare triple {65319#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:00,397 INFO L290 TraceCheckUtils]: 17: Hoare triple {65319#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 12:32:00,397 INFO L290 TraceCheckUtils]: 18: Hoare triple {65368#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 12:32:00,398 INFO L290 TraceCheckUtils]: 19: Hoare triple {65368#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 12:32:00,398 INFO L290 TraceCheckUtils]: 20: Hoare triple {65368#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:00,398 INFO L290 TraceCheckUtils]: 21: Hoare triple {65378#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:00,399 INFO L290 TraceCheckUtils]: 22: Hoare triple {65378#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {65378#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:00,399 INFO L290 TraceCheckUtils]: 23: Hoare triple {65378#(<= ~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; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:00,399 INFO L290 TraceCheckUtils]: 24: Hoare triple {65378#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 12:32:00,399 INFO L290 TraceCheckUtils]: 25: Hoare triple {65391#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 12:32:00,400 INFO L290 TraceCheckUtils]: 26: Hoare triple {65391#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 12:32:00,400 INFO L290 TraceCheckUtils]: 27: Hoare triple {65391#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 12:32:00,400 INFO L290 TraceCheckUtils]: 28: Hoare triple {65401#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 12:32:00,401 INFO L290 TraceCheckUtils]: 29: Hoare triple {65401#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 12:32:00,401 INFO L290 TraceCheckUtils]: 30: Hoare triple {65401#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,401 INFO L290 TraceCheckUtils]: 31: Hoare triple {65411#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,402 INFO L272 TraceCheckUtils]: 32: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,402 INFO L290 TraceCheckUtils]: 33: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,402 INFO L290 TraceCheckUtils]: 34: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,402 INFO L290 TraceCheckUtils]: 35: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,402 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #98#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,403 INFO L272 TraceCheckUtils]: 37: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,403 INFO L290 TraceCheckUtils]: 38: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,403 INFO L290 TraceCheckUtils]: 39: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,403 INFO L290 TraceCheckUtils]: 40: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,404 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #100#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,404 INFO L272 TraceCheckUtils]: 42: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,404 INFO L290 TraceCheckUtils]: 43: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,404 INFO L290 TraceCheckUtils]: 44: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,404 INFO L290 TraceCheckUtils]: 45: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,405 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #102#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,405 INFO L272 TraceCheckUtils]: 47: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,405 INFO L290 TraceCheckUtils]: 48: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,405 INFO L290 TraceCheckUtils]: 49: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,406 INFO L290 TraceCheckUtils]: 50: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,406 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #104#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,406 INFO L290 TraceCheckUtils]: 52: Hoare triple {65411#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,406 INFO L290 TraceCheckUtils]: 53: Hoare triple {65411#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:00,407 INFO L290 TraceCheckUtils]: 54: Hoare triple {65411#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:00,407 INFO L290 TraceCheckUtils]: 55: Hoare triple {65484#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:00,407 INFO L290 TraceCheckUtils]: 56: Hoare triple {65484#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {65484#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:00,407 INFO L290 TraceCheckUtils]: 57: Hoare triple {65484#(<= ~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; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:00,408 INFO L290 TraceCheckUtils]: 58: Hoare triple {65484#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:00,408 INFO L290 TraceCheckUtils]: 59: Hoare triple {65497#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:00,408 INFO L290 TraceCheckUtils]: 60: Hoare triple {65497#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:00,409 INFO L290 TraceCheckUtils]: 61: Hoare triple {65497#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 12:32:00,409 INFO L290 TraceCheckUtils]: 62: Hoare triple {65507#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 12:32:00,409 INFO L290 TraceCheckUtils]: 63: Hoare triple {65507#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 12:32:00,409 INFO L290 TraceCheckUtils]: 64: Hoare triple {65507#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65517#(<= |main_#t~post8| 8)} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 65: Hoare triple {65517#(<= |main_#t~post8| 8)} assume !(#t~post8 < 50);havoc #t~post8; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 50);havoc #t~post7; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#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; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 50);havoc #t~post6; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#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)); {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 12:32:00,410 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:32:00,410 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:32:00,652 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#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)); {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 50);havoc #t~post6; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#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; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 50);havoc #t~post7; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 12:32:00,653 INFO L290 TraceCheckUtils]: 65: Hoare triple {65581#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {65312#false} is VALID [2022-04-28 12:32:00,654 INFO L290 TraceCheckUtils]: 64: Hoare triple {65585#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65581#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:32:00,654 INFO L290 TraceCheckUtils]: 63: Hoare triple {65585#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65585#(< ~counter~0 50)} is VALID [2022-04-28 12:32:00,654 INFO L290 TraceCheckUtils]: 62: Hoare triple {65585#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {65585#(< ~counter~0 50)} is VALID [2022-04-28 12:32:00,655 INFO L290 TraceCheckUtils]: 61: Hoare triple {65595#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65585#(< ~counter~0 50)} is VALID [2022-04-28 12:32:00,655 INFO L290 TraceCheckUtils]: 60: Hoare triple {65595#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65595#(< ~counter~0 49)} is VALID [2022-04-28 12:32:00,655 INFO L290 TraceCheckUtils]: 59: Hoare triple {65595#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {65595#(< ~counter~0 49)} is VALID [2022-04-28 12:32:00,656 INFO L290 TraceCheckUtils]: 58: Hoare triple {65605#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65595#(< ~counter~0 49)} is VALID [2022-04-28 12:32:00,656 INFO L290 TraceCheckUtils]: 57: Hoare triple {65605#(< ~counter~0 48)} ~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; {65605#(< ~counter~0 48)} is VALID [2022-04-28 12:32:00,656 INFO L290 TraceCheckUtils]: 56: Hoare triple {65605#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {65605#(< ~counter~0 48)} is VALID [2022-04-28 12:32:00,656 INFO L290 TraceCheckUtils]: 55: Hoare triple {65605#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {65605#(< ~counter~0 48)} is VALID [2022-04-28 12:32:00,657 INFO L290 TraceCheckUtils]: 54: Hoare triple {65618#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65605#(< ~counter~0 48)} is VALID [2022-04-28 12:32:00,657 INFO L290 TraceCheckUtils]: 53: Hoare triple {65618#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,657 INFO L290 TraceCheckUtils]: 52: Hoare triple {65618#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,658 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #104#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,658 INFO L290 TraceCheckUtils]: 50: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L290 TraceCheckUtils]: 49: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L290 TraceCheckUtils]: 48: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L272 TraceCheckUtils]: 47: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #102#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,658 INFO L290 TraceCheckUtils]: 45: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L290 TraceCheckUtils]: 44: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L290 TraceCheckUtils]: 43: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 12:32:00,658 INFO L272 TraceCheckUtils]: 42: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 12:32:00,659 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #100#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,659 INFO L290 TraceCheckUtils]: 40: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 12:32:00,659 INFO L290 TraceCheckUtils]: 39: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 12:32:00,659 INFO L290 TraceCheckUtils]: 38: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 12:32:00,659 INFO L272 TraceCheckUtils]: 37: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 12:32:00,659 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65311#true} {65618#(< ~counter~0 47)} #98#return; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,659 INFO L290 TraceCheckUtils]: 35: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 12:32:00,660 INFO L290 TraceCheckUtils]: 34: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 12:32:00,660 INFO L290 TraceCheckUtils]: 33: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 12:32:00,660 INFO L272 TraceCheckUtils]: 32: Hoare triple {65618#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 12:32:00,660 INFO L290 TraceCheckUtils]: 31: Hoare triple {65618#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,660 INFO L290 TraceCheckUtils]: 30: Hoare triple {65691#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65618#(< ~counter~0 47)} is VALID [2022-04-28 12:32:00,661 INFO L290 TraceCheckUtils]: 29: Hoare triple {65691#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65691#(< ~counter~0 46)} is VALID [2022-04-28 12:32:00,661 INFO L290 TraceCheckUtils]: 28: Hoare triple {65691#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {65691#(< ~counter~0 46)} is VALID [2022-04-28 12:32:00,661 INFO L290 TraceCheckUtils]: 27: Hoare triple {65701#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65691#(< ~counter~0 46)} is VALID [2022-04-28 12:32:00,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {65701#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65701#(< ~counter~0 45)} is VALID [2022-04-28 12:32:00,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {65701#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {65701#(< ~counter~0 45)} is VALID [2022-04-28 12:32:00,662 INFO L290 TraceCheckUtils]: 24: Hoare triple {65711#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65701#(< ~counter~0 45)} is VALID [2022-04-28 12:32:00,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {65711#(< ~counter~0 44)} ~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; {65711#(< ~counter~0 44)} is VALID [2022-04-28 12:32:00,662 INFO L290 TraceCheckUtils]: 22: Hoare triple {65711#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {65711#(< ~counter~0 44)} is VALID [2022-04-28 12:32:00,663 INFO L290 TraceCheckUtils]: 21: Hoare triple {65711#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {65711#(< ~counter~0 44)} is VALID [2022-04-28 12:32:00,663 INFO L290 TraceCheckUtils]: 20: Hoare triple {65724#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65711#(< ~counter~0 44)} is VALID [2022-04-28 12:32:00,663 INFO L290 TraceCheckUtils]: 19: Hoare triple {65724#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65724#(< ~counter~0 43)} is VALID [2022-04-28 12:32:00,664 INFO L290 TraceCheckUtils]: 18: Hoare triple {65724#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {65724#(< ~counter~0 43)} is VALID [2022-04-28 12:32:00,664 INFO L290 TraceCheckUtils]: 17: Hoare triple {65734#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65724#(< ~counter~0 43)} is VALID [2022-04-28 12:32:00,664 INFO L290 TraceCheckUtils]: 16: Hoare triple {65734#(< ~counter~0 42)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,665 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65311#true} {65734#(< ~counter~0 42)} #96#return; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,665 INFO L290 TraceCheckUtils]: 14: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 12:32:00,665 INFO L290 TraceCheckUtils]: 13: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 12:32:00,665 INFO L290 TraceCheckUtils]: 12: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 12:32:00,665 INFO L272 TraceCheckUtils]: 11: Hoare triple {65734#(< ~counter~0 42)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 12:32:00,665 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65311#true} {65734#(< ~counter~0 42)} #94#return; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,665 INFO L290 TraceCheckUtils]: 9: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 12:32:00,665 INFO L290 TraceCheckUtils]: 8: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 12:32:00,666 INFO L290 TraceCheckUtils]: 7: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 12:32:00,666 INFO L272 TraceCheckUtils]: 6: Hoare triple {65734#(< ~counter~0 42)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 12:32:00,666 INFO L290 TraceCheckUtils]: 5: Hoare triple {65734#(< ~counter~0 42)} 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; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,666 INFO L272 TraceCheckUtils]: 4: Hoare triple {65734#(< ~counter~0 42)} call #t~ret9 := main(); {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,666 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65734#(< ~counter~0 42)} {65311#true} #108#return; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,666 INFO L290 TraceCheckUtils]: 2: Hoare triple {65734#(< ~counter~0 42)} assume true; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,667 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#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; {65734#(< ~counter~0 42)} is VALID [2022-04-28 12:32:00,667 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 12:32:00,667 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:32:00,667 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:32:00,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1169784776] [2022-04-28 12:32:00,667 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:32:00,667 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [893910358] [2022-04-28 12:32:00,667 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [893910358] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:32:00,667 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:32:00,667 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 12:32:00,668 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:32:00,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2115278744] [2022-04-28 12:32:00,668 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2115278744] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:32:00,668 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:32:00,668 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 12:32:00,668 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1118287845] [2022-04-28 12:32:00,668 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:32:00,668 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 12:32:00,668 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:32:00,668 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), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:32:00,699 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:00,699 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 12:32:00,699 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:00,700 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 12:32:00,700 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:32:00,700 INFO L87 Difference]: Start difference. First operand 813 states and 1106 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:32:02,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:02,634 INFO L93 Difference]: Finished difference Result 1433 states and 1997 transitions. [2022-04-28 12:32:02,634 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 12:32:02,634 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 12:32:02,634 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:32:02,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:32:02,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 12:32:02,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:32:02,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 12:32:02,637 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 239 transitions. [2022-04-28 12:32:02,764 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:02,804 INFO L225 Difference]: With dead ends: 1433 [2022-04-28 12:32:02,804 INFO L226 Difference]: Without dead ends: 975 [2022-04-28 12:32:02,806 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 131 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=309, Invalid=447, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:32:02,806 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 170 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:32:02,806 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 287 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 144 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:32:02,807 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 975 states. [2022-04-28 12:32:04,207 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 975 to 947. [2022-04-28 12:32:04,208 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:32:04,209 INFO L82 GeneralOperation]: Start isEquivalent. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 12:32:04,209 INFO L74 IsIncluded]: Start isIncluded. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 12:32:04,210 INFO L87 Difference]: Start difference. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 12:32:04,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:04,240 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 12:32:04,240 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 12:32:04,241 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:32:04,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:32:04,242 INFO L74 IsIncluded]: Start isIncluded. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 12:32:04,242 INFO L87 Difference]: Start difference. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 12:32:04,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:04,273 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 12:32:04,273 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 12:32:04,274 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:32:04,274 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:32:04,274 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:32:04,274 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:32:04,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 12:32:04,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 947 states to 947 states and 1263 transitions. [2022-04-28 12:32:04,319 INFO L78 Accepts]: Start accepts. Automaton has 947 states and 1263 transitions. Word has length 76 [2022-04-28 12:32:04,319 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:32:04,319 INFO L495 AbstractCegarLoop]: Abstraction has 947 states and 1263 transitions. [2022-04-28 12:32:04,319 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 12:32:04,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 947 states and 1263 transitions. [2022-04-28 12:32:06,083 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1263 edges. 1263 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:06,084 INFO L276 IsEmpty]: Start isEmpty. Operand 947 states and 1263 transitions. [2022-04-28 12:32:06,084 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-28 12:32:06,084 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:32:06,084 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 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, 1, 1, 1, 1, 1, 1] [2022-04-28 12:32:06,105 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Forceful destruction successful, exit code 0 [2022-04-28 12:32:06,298 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable27 [2022-04-28 12:32:06,298 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:32:06,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:32:06,298 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 1 times [2022-04-28 12:32:06,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:06,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1973160279] [2022-04-28 12:32:06,299 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:32:06,299 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 2 times [2022-04-28 12:32:06,299 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:32:06,299 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [542020222] [2022-04-28 12:32:06,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:32:06,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:32:06,307 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:32:06,307 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [963973467] [2022-04-28 12:32:06,307 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:32:06,307 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:32:06,308 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:32:06,308 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:32:06,310 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-28 12:32:06,354 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:32:06,355 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:32:06,355 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-28 12:32:06,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:32:06,365 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:32:06,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#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; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#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; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,922 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,923 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 12:32:06,923 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,923 INFO L290 TraceCheckUtils]: 17: Hoare triple {72563#(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; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,924 INFO L290 TraceCheckUtils]: 18: Hoare triple {72563#(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 < 50);havoc #t~post6; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,924 INFO L290 TraceCheckUtils]: 19: Hoare triple {72563#(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; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,924 INFO L290 TraceCheckUtils]: 20: Hoare triple {72573#(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; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,925 INFO L290 TraceCheckUtils]: 21: Hoare triple {72573#(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 < 50);havoc #t~post7; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,925 INFO L290 TraceCheckUtils]: 22: Hoare triple {72573#(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; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,926 INFO L290 TraceCheckUtils]: 23: Hoare triple {72583#(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))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,926 INFO L290 TraceCheckUtils]: 24: Hoare triple {72583#(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 !!(#t~post8 < 50);havoc #t~post8; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,926 INFO L272 TraceCheckUtils]: 25: Hoare triple {72583#(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 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,926 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,926 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,926 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,927 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72583#(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))} #98#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,927 INFO L272 TraceCheckUtils]: 30: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-28 12:32:06,927 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,927 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,927 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,928 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72583#(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; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,928 INFO L272 TraceCheckUtils]: 35: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-28 12:32:06,928 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,928 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,928 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,929 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72583#(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; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,929 INFO L272 TraceCheckUtils]: 40: Hoare triple {72583#(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)); {72510#true} is VALID [2022-04-28 12:32:06,929 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,929 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,929 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,930 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72583#(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; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,930 INFO L290 TraceCheckUtils]: 45: Hoare triple {72583#(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);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,931 INFO L290 TraceCheckUtils]: 46: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,931 INFO L290 TraceCheckUtils]: 47: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,931 INFO L272 TraceCheckUtils]: 48: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,931 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,931 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,932 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,932 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,932 INFO L272 TraceCheckUtils]: 53: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,933 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:06,933 INFO L290 TraceCheckUtils]: 55: Hoare triple {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:06,933 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:06,934 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,934 INFO L272 TraceCheckUtils]: 58: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,934 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,934 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,934 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,935 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,935 INFO L272 TraceCheckUtils]: 63: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:06,935 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:06,935 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:06,935 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:06,936 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,936 INFO L290 TraceCheckUtils]: 68: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,937 INFO L290 TraceCheckUtils]: 69: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,937 INFO L290 TraceCheckUtils]: 70: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,938 INFO L290 TraceCheckUtils]: 71: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,938 INFO L290 TraceCheckUtils]: 72: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:06,939 INFO L290 TraceCheckUtils]: 73: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 12:32:06,939 INFO L290 TraceCheckUtils]: 74: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 12:32:06,940 INFO L290 TraceCheckUtils]: 75: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 12:32:06,940 INFO L290 TraceCheckUtils]: 76: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 12:32:06,941 INFO L272 TraceCheckUtils]: 77: Hoare triple {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:32:06,941 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:06,941 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 12:32:06,941 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 12:32:06,942 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 12:32:06,942 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:32:14,724 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 12:32:14,725 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 12:32:14,725 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:14,726 INFO L272 TraceCheckUtils]: 77: Hoare triple {72775#(= (+ (* 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)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:32:14,727 INFO L290 TraceCheckUtils]: 76: Hoare triple {72779#(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); {72775#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:32:14,727 INFO L290 TraceCheckUtils]: 75: Hoare triple {72779#(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 < 50);havoc #t~post6; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:32:14,727 INFO L290 TraceCheckUtils]: 74: Hoare triple {72779#(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; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:32:14,967 INFO L290 TraceCheckUtils]: 73: Hoare triple {72789#(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; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:32:14,968 INFO L290 TraceCheckUtils]: 72: Hoare triple {72789#(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); {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:14,968 INFO L290 TraceCheckUtils]: 71: Hoare triple {72789#(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 < 50);havoc #t~post7; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:14,969 INFO L290 TraceCheckUtils]: 70: Hoare triple {72789#(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; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,158 INFO L290 TraceCheckUtils]: 69: Hoare triple {72802#(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; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,159 INFO L290 TraceCheckUtils]: 68: Hoare triple {72802#(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); {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,160 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72802#(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; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,160 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,160 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,160 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,160 INFO L272 TraceCheckUtils]: 63: Hoare triple {72802#(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)); {72510#true} is VALID [2022-04-28 12:32:15,161 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72802#(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; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,161 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,161 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,161 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,161 INFO L272 TraceCheckUtils]: 58: Hoare triple {72802#(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)); {72510#true} is VALID [2022-04-28 12:32:15,162 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72839#(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; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,162 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:15,163 INFO L290 TraceCheckUtils]: 55: Hoare triple {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:15,163 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:32:15,163 INFO L272 TraceCheckUtils]: 53: Hoare triple {72839#(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)); {72510#true} is VALID [2022-04-28 12:32:15,164 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72839#(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))))} #98#return; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,164 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,164 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,164 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,164 INFO L272 TraceCheckUtils]: 48: Hoare triple {72839#(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 ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,165 INFO L290 TraceCheckUtils]: 47: Hoare triple {72839#(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))))} assume !!(#t~post8 < 50);havoc #t~post8; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,165 INFO L290 TraceCheckUtils]: 46: Hoare triple {72839#(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))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,282 INFO L290 TraceCheckUtils]: 45: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,283 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,283 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,283 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,283 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,283 INFO L272 TraceCheckUtils]: 40: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,284 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,284 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,284 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,284 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,284 INFO L272 TraceCheckUtils]: 35: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,285 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,285 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,285 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,285 INFO L272 TraceCheckUtils]: 30: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,286 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,286 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,286 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,286 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,286 INFO L272 TraceCheckUtils]: 25: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,287 INFO L290 TraceCheckUtils]: 24: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,288 INFO L290 TraceCheckUtils]: 23: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,288 INFO L290 TraceCheckUtils]: 22: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:32:15,289 INFO L290 TraceCheckUtils]: 21: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 50);havoc #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 12:32:15,289 INFO L290 TraceCheckUtils]: 20: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 12:32:15,290 INFO L290 TraceCheckUtils]: 19: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) 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; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 12:32:15,290 INFO L290 TraceCheckUtils]: 18: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,291 INFO L290 TraceCheckUtils]: 17: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,291 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:32:15,291 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 12:32:15,291 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#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; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#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; {72510#true} is VALID [2022-04-28 12:32:15,292 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 12:32:15,293 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 12:32:15,293 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:32:15,293 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [542020222] [2022-04-28 12:32:15,293 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:32:15,293 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [963973467] [2022-04-28 12:32:15,293 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [963973467] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:32:15,293 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:32:15,293 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-28 12:32:15,294 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:32:15,294 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1973160279] [2022-04-28 12:32:15,294 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1973160279] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:32:15,294 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:32:15,294 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 12:32:15,294 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [144669593] [2022-04-28 12:32:15,294 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:32:15,294 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 81 [2022-04-28 12:32:15,294 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:32:15,294 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 12:32:15,369 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:15,369 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 12:32:15,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:15,370 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 12:32:15,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=392, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:32:15,370 INFO L87 Difference]: Start difference. First operand 947 states and 1263 transitions. Second operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 12:32:19,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:19,670 INFO L93 Difference]: Finished difference Result 1025 states and 1371 transitions. [2022-04-28 12:32:19,670 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:32:19,670 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 81 [2022-04-28 12:32:19,670 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:32:19,670 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 12:32:19,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 12:32:19,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 12:32:19,673 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 12:32:19,673 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 162 transitions. [2022-04-28 12:32:19,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:19,871 INFO L225 Difference]: With dead ends: 1025 [2022-04-28 12:32:19,872 INFO L226 Difference]: Without dead ends: 1022 [2022-04-28 12:32:19,872 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 111 ImplicationChecksByTransitivity, 2.0s TimeCoverageRelationStatistics Valid=132, Invalid=680, Unknown=0, NotChecked=0, Total=812 [2022-04-28 12:32:19,872 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 74 mSDsluCounter, 438 mSDsCounter, 0 mSdLazyCounter, 760 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 501 SdHoareTripleChecker+Invalid, 819 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 760 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 12:32:19,872 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 501 Invalid, 819 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 760 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 12:32:19,873 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1022 states. [2022-04-28 12:32:21,882 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1022 to 957. [2022-04-28 12:32:21,882 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:32:21,883 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:21,884 INFO L74 IsIncluded]: Start isIncluded. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:21,884 INFO L87 Difference]: Start difference. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:21,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:21,917 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 12:32:21,917 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 12:32:21,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:32:21,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:32:21,919 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 12:32:21,919 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 12:32:21,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:21,952 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 12:32:21,952 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 12:32:21,954 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:32:21,954 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:32:21,954 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:32:21,954 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:32:21,954 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:21,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1272 transitions. [2022-04-28 12:32:21,999 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1272 transitions. Word has length 81 [2022-04-28 12:32:21,999 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:32:21,999 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1272 transitions. [2022-04-28 12:32:21,999 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 12:32:21,999 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1272 transitions. [2022-04-28 12:32:24,269 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1272 edges. 1272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:24,269 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1272 transitions. [2022-04-28 12:32:24,269 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-28 12:32:24,270 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:32:24,270 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 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, 1, 1, 1] [2022-04-28 12:32:24,286 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-28 12:32:24,470 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-28 12:32:24,470 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:32:24,470 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:32:24,470 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 1 times [2022-04-28 12:32:24,471 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:24,471 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [692879203] [2022-04-28 12:32:24,471 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:32:24,471 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 2 times [2022-04-28 12:32:24,471 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:32:24,471 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1114538902] [2022-04-28 12:32:24,471 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:32:24,471 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:32:24,479 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:32:24,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1225101337] [2022-04-28 12:32:24,479 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:32:24,479 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:32:24,479 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:32:24,480 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:32:24,481 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-28 12:32:24,529 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:32:24,529 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:32:24,530 INFO L263 TraceCheckSpWp]: Trace formula consists of 261 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 12:32:24,540 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:32:24,541 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:32:24,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 12:32:24,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#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; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,789 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79047#(<= ~counter~0 0)} {79039#true} #108#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,789 INFO L272 TraceCheckUtils]: 4: Hoare triple {79047#(<= ~counter~0 0)} call #t~ret9 := main(); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,789 INFO L290 TraceCheckUtils]: 5: Hoare triple {79047#(<= ~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; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,789 INFO L272 TraceCheckUtils]: 6: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,789 INFO L290 TraceCheckUtils]: 7: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,790 INFO L290 TraceCheckUtils]: 8: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,790 INFO L290 TraceCheckUtils]: 9: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,790 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #94#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,790 INFO L272 TraceCheckUtils]: 11: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,790 INFO L290 TraceCheckUtils]: 12: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,791 INFO L290 TraceCheckUtils]: 13: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,791 INFO L290 TraceCheckUtils]: 14: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,791 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #96#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,791 INFO L290 TraceCheckUtils]: 16: Hoare triple {79047#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 12:32:24,792 INFO L290 TraceCheckUtils]: 17: Hoare triple {79047#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 12:32:24,793 INFO L290 TraceCheckUtils]: 18: Hoare triple {79096#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 12:32:24,793 INFO L290 TraceCheckUtils]: 19: Hoare triple {79096#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 12:32:24,793 INFO L290 TraceCheckUtils]: 20: Hoare triple {79096#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:24,794 INFO L290 TraceCheckUtils]: 21: Hoare triple {79106#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:24,794 INFO L290 TraceCheckUtils]: 22: Hoare triple {79106#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {79106#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:24,794 INFO L290 TraceCheckUtils]: 23: Hoare triple {79106#(<= ~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; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 12:32:24,794 INFO L290 TraceCheckUtils]: 24: Hoare triple {79106#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 12:32:24,795 INFO L290 TraceCheckUtils]: 25: Hoare triple {79119#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 12:32:24,795 INFO L290 TraceCheckUtils]: 26: Hoare triple {79119#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 12:32:24,795 INFO L290 TraceCheckUtils]: 27: Hoare triple {79119#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 12:32:24,811 INFO L290 TraceCheckUtils]: 28: Hoare triple {79129#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 12:32:24,811 INFO L290 TraceCheckUtils]: 29: Hoare triple {79129#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 12:32:24,812 INFO L290 TraceCheckUtils]: 30: Hoare triple {79129#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,812 INFO L290 TraceCheckUtils]: 31: Hoare triple {79139#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,813 INFO L272 TraceCheckUtils]: 32: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,813 INFO L290 TraceCheckUtils]: 33: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,813 INFO L290 TraceCheckUtils]: 34: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,813 INFO L290 TraceCheckUtils]: 35: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,814 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #98#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,814 INFO L272 TraceCheckUtils]: 37: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,814 INFO L290 TraceCheckUtils]: 38: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,814 INFO L290 TraceCheckUtils]: 39: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,815 INFO L290 TraceCheckUtils]: 40: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,815 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #100#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,815 INFO L272 TraceCheckUtils]: 42: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,815 INFO L290 TraceCheckUtils]: 43: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,816 INFO L290 TraceCheckUtils]: 44: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,816 INFO L290 TraceCheckUtils]: 45: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,816 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #102#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,816 INFO L272 TraceCheckUtils]: 47: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,816 INFO L290 TraceCheckUtils]: 48: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,817 INFO L290 TraceCheckUtils]: 49: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,817 INFO L290 TraceCheckUtils]: 50: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,817 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #104#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,817 INFO L290 TraceCheckUtils]: 52: Hoare triple {79139#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 12:32:24,818 INFO L290 TraceCheckUtils]: 53: Hoare triple {79139#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,818 INFO L290 TraceCheckUtils]: 54: Hoare triple {79209#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,818 INFO L272 TraceCheckUtils]: 55: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,819 INFO L290 TraceCheckUtils]: 56: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,819 INFO L290 TraceCheckUtils]: 57: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,819 INFO L290 TraceCheckUtils]: 58: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,819 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #98#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,820 INFO L272 TraceCheckUtils]: 60: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,820 INFO L290 TraceCheckUtils]: 61: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,820 INFO L290 TraceCheckUtils]: 62: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,820 INFO L290 TraceCheckUtils]: 63: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,820 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #100#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,821 INFO L272 TraceCheckUtils]: 65: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,821 INFO L290 TraceCheckUtils]: 66: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,821 INFO L290 TraceCheckUtils]: 67: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,821 INFO L290 TraceCheckUtils]: 68: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,822 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #102#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,822 INFO L272 TraceCheckUtils]: 70: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,822 INFO L290 TraceCheckUtils]: 71: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,822 INFO L290 TraceCheckUtils]: 72: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,822 INFO L290 TraceCheckUtils]: 73: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,823 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #104#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,823 INFO L290 TraceCheckUtils]: 75: Hoare triple {79209#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,823 INFO L290 TraceCheckUtils]: 76: Hoare triple {79209#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 12:32:24,824 INFO L290 TraceCheckUtils]: 77: Hoare triple {79209#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:24,824 INFO L290 TraceCheckUtils]: 78: Hoare triple {79282#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:24,824 INFO L290 TraceCheckUtils]: 79: Hoare triple {79282#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {79282#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:24,824 INFO L290 TraceCheckUtils]: 80: Hoare triple {79282#(<= ~counter~0 7)} ~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; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 12:32:24,824 INFO L290 TraceCheckUtils]: 81: Hoare triple {79282#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79295#(<= |main_#t~post6| 7)} is VALID [2022-04-28 12:32:24,825 INFO L290 TraceCheckUtils]: 82: Hoare triple {79295#(<= |main_#t~post6| 7)} assume !(#t~post6 < 50);havoc #t~post6; {79040#false} is VALID [2022-04-28 12:32:24,825 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#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)); {79040#false} is VALID [2022-04-28 12:32:24,825 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 12:32:24,825 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 12:32:24,825 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 12:32:24,825 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 88 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:32:24,825 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:32:25,253 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 12:32:25,253 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 12:32:25,253 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 12:32:25,253 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#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)); {79040#false} is VALID [2022-04-28 12:32:25,253 INFO L290 TraceCheckUtils]: 82: Hoare triple {79323#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {79040#false} is VALID [2022-04-28 12:32:25,254 INFO L290 TraceCheckUtils]: 81: Hoare triple {79327#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79323#(< |main_#t~post6| 50)} is VALID [2022-04-28 12:32:25,254 INFO L290 TraceCheckUtils]: 80: Hoare triple {79327#(< ~counter~0 50)} ~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; {79327#(< ~counter~0 50)} is VALID [2022-04-28 12:32:25,254 INFO L290 TraceCheckUtils]: 79: Hoare triple {79327#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {79327#(< ~counter~0 50)} is VALID [2022-04-28 12:32:25,255 INFO L290 TraceCheckUtils]: 78: Hoare triple {79327#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {79327#(< ~counter~0 50)} is VALID [2022-04-28 12:32:25,256 INFO L290 TraceCheckUtils]: 77: Hoare triple {79340#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79327#(< ~counter~0 50)} is VALID [2022-04-28 12:32:25,256 INFO L290 TraceCheckUtils]: 76: Hoare triple {79340#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,257 INFO L290 TraceCheckUtils]: 75: Hoare triple {79340#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,257 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #104#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,257 INFO L290 TraceCheckUtils]: 73: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,257 INFO L290 TraceCheckUtils]: 72: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,257 INFO L290 TraceCheckUtils]: 71: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,257 INFO L272 TraceCheckUtils]: 70: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,258 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #102#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,258 INFO L290 TraceCheckUtils]: 68: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,258 INFO L290 TraceCheckUtils]: 67: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,258 INFO L290 TraceCheckUtils]: 66: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,258 INFO L272 TraceCheckUtils]: 65: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,259 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #100#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,259 INFO L290 TraceCheckUtils]: 63: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,259 INFO L290 TraceCheckUtils]: 62: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,259 INFO L290 TraceCheckUtils]: 61: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,259 INFO L272 TraceCheckUtils]: 60: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,259 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79039#true} {79340#(< ~counter~0 49)} #98#return; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,260 INFO L290 TraceCheckUtils]: 58: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,260 INFO L290 TraceCheckUtils]: 57: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,260 INFO L290 TraceCheckUtils]: 56: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,260 INFO L272 TraceCheckUtils]: 55: Hoare triple {79340#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,260 INFO L290 TraceCheckUtils]: 54: Hoare triple {79340#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,261 INFO L290 TraceCheckUtils]: 53: Hoare triple {79413#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79340#(< ~counter~0 49)} is VALID [2022-04-28 12:32:25,261 INFO L290 TraceCheckUtils]: 52: Hoare triple {79413#(< ~counter~0 48)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,262 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #104#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,262 INFO L290 TraceCheckUtils]: 50: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,262 INFO L290 TraceCheckUtils]: 49: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,262 INFO L290 TraceCheckUtils]: 48: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,262 INFO L272 TraceCheckUtils]: 47: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,262 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #102#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,262 INFO L290 TraceCheckUtils]: 45: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,262 INFO L290 TraceCheckUtils]: 44: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,262 INFO L290 TraceCheckUtils]: 43: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,263 INFO L272 TraceCheckUtils]: 42: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,263 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #100#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,263 INFO L290 TraceCheckUtils]: 40: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,263 INFO L290 TraceCheckUtils]: 39: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,263 INFO L290 TraceCheckUtils]: 38: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,263 INFO L272 TraceCheckUtils]: 37: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,264 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79039#true} {79413#(< ~counter~0 48)} #98#return; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,264 INFO L290 TraceCheckUtils]: 35: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,264 INFO L290 TraceCheckUtils]: 34: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,264 INFO L290 TraceCheckUtils]: 33: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,264 INFO L272 TraceCheckUtils]: 32: Hoare triple {79413#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,264 INFO L290 TraceCheckUtils]: 31: Hoare triple {79413#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,265 INFO L290 TraceCheckUtils]: 30: Hoare triple {79483#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79413#(< ~counter~0 48)} is VALID [2022-04-28 12:32:25,265 INFO L290 TraceCheckUtils]: 29: Hoare triple {79483#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79483#(< ~counter~0 47)} is VALID [2022-04-28 12:32:25,266 INFO L290 TraceCheckUtils]: 28: Hoare triple {79483#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {79483#(< ~counter~0 47)} is VALID [2022-04-28 12:32:25,266 INFO L290 TraceCheckUtils]: 27: Hoare triple {79493#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79483#(< ~counter~0 47)} is VALID [2022-04-28 12:32:25,267 INFO L290 TraceCheckUtils]: 26: Hoare triple {79493#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79493#(< ~counter~0 46)} is VALID [2022-04-28 12:32:25,267 INFO L290 TraceCheckUtils]: 25: Hoare triple {79493#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {79493#(< ~counter~0 46)} is VALID [2022-04-28 12:32:25,268 INFO L290 TraceCheckUtils]: 24: Hoare triple {79503#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79493#(< ~counter~0 46)} is VALID [2022-04-28 12:32:25,268 INFO L290 TraceCheckUtils]: 23: Hoare triple {79503#(< ~counter~0 45)} ~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; {79503#(< ~counter~0 45)} is VALID [2022-04-28 12:32:25,268 INFO L290 TraceCheckUtils]: 22: Hoare triple {79503#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {79503#(< ~counter~0 45)} is VALID [2022-04-28 12:32:25,268 INFO L290 TraceCheckUtils]: 21: Hoare triple {79503#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {79503#(< ~counter~0 45)} is VALID [2022-04-28 12:32:25,269 INFO L290 TraceCheckUtils]: 20: Hoare triple {79516#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79503#(< ~counter~0 45)} is VALID [2022-04-28 12:32:25,269 INFO L290 TraceCheckUtils]: 19: Hoare triple {79516#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79516#(< ~counter~0 44)} is VALID [2022-04-28 12:32:25,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {79516#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {79516#(< ~counter~0 44)} is VALID [2022-04-28 12:32:25,270 INFO L290 TraceCheckUtils]: 17: Hoare triple {79526#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79516#(< ~counter~0 44)} is VALID [2022-04-28 12:32:25,271 INFO L290 TraceCheckUtils]: 16: Hoare triple {79526#(< ~counter~0 43)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,271 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79039#true} {79526#(< ~counter~0 43)} #96#return; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,271 INFO L290 TraceCheckUtils]: 12: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,271 INFO L272 TraceCheckUtils]: 11: Hoare triple {79526#(< ~counter~0 43)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,272 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79039#true} {79526#(< ~counter~0 43)} #94#return; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,272 INFO L290 TraceCheckUtils]: 9: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 12:32:25,272 INFO L290 TraceCheckUtils]: 8: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 12:32:25,272 INFO L290 TraceCheckUtils]: 7: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 12:32:25,272 INFO L272 TraceCheckUtils]: 6: Hoare triple {79526#(< ~counter~0 43)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 12:32:25,272 INFO L290 TraceCheckUtils]: 5: Hoare triple {79526#(< ~counter~0 43)} 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; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,272 INFO L272 TraceCheckUtils]: 4: Hoare triple {79526#(< ~counter~0 43)} call #t~ret9 := main(); {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,273 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79526#(< ~counter~0 43)} {79039#true} #108#return; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,273 INFO L290 TraceCheckUtils]: 2: Hoare triple {79526#(< ~counter~0 43)} assume true; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,274 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#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; {79526#(< ~counter~0 43)} is VALID [2022-04-28 12:32:25,274 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 12:32:25,274 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 24 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:32:25,274 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:32:25,274 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1114538902] [2022-04-28 12:32:25,274 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:32:25,274 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1225101337] [2022-04-28 12:32:25,274 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1225101337] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:32:25,274 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:32:25,274 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 12:32:25,275 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:32:25,275 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [692879203] [2022-04-28 12:32:25,275 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [692879203] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:32:25,275 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:32:25,275 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 12:32:25,275 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [425565475] [2022-04-28 12:32:25,275 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:32:25,275 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 12:32:25,275 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:32:25,275 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:32:25,328 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:25,328 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 12:32:25,328 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:25,328 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 12:32:25,328 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 12:32:25,329 INFO L87 Difference]: Start difference. First operand 957 states and 1272 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:32:28,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:28,283 INFO L93 Difference]: Finished difference Result 966 states and 1279 transitions. [2022-04-28 12:32:28,283 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 12:32:28,283 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 12:32:28,283 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:32:28,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:32:28,284 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 12:32:28,284 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:32:28,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 12:32:28,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 180 transitions. [2022-04-28 12:32:28,436 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:28,475 INFO L225 Difference]: With dead ends: 966 [2022-04-28 12:32:28,475 INFO L226 Difference]: Without dead ends: 959 [2022-04-28 12:32:28,475 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=246, Invalid=354, Unknown=0, NotChecked=0, Total=600 [2022-04-28 12:32:28,476 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 104 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 178 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:32:28,476 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [104 Valid, 282 Invalid, 178 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:32:28,476 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 959 states. [2022-04-28 12:32:31,225 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 959 to 957. [2022-04-28 12:32:31,225 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:32:31,226 INFO L82 GeneralOperation]: Start isEquivalent. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:31,227 INFO L74 IsIncluded]: Start isIncluded. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:31,227 INFO L87 Difference]: Start difference. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:31,256 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:31,256 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 12:32:31,256 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 12:32:31,258 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:32:31,258 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:32:31,259 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 12:32:31,259 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 12:32:31,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:32:31,289 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 12:32:31,290 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 12:32:31,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:32:31,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:32:31,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:32:31,291 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:32:31,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 12:32:31,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1270 transitions. [2022-04-28 12:32:31,348 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1270 transitions. Word has length 87 [2022-04-28 12:32:31,348 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:32:31,348 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1270 transitions. [2022-04-28 12:32:31,348 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:32:31,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1270 transitions. [2022-04-28 12:32:33,663 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1270 edges. 1270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:32:33,663 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1270 transitions. [2022-04-28 12:32:33,664 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-28 12:32:33,664 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:32:33,664 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-28 12:32:33,680 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-28 12:32:33,864 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:32:33,864 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:32:33,865 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:32:33,865 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 3 times [2022-04-28 12:32:33,865 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:32:33,865 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [517789353] [2022-04-28 12:32:33,865 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:32:33,865 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 4 times [2022-04-28 12:32:33,865 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:32:33,865 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [799631625] [2022-04-28 12:32:33,865 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:32:33,866 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:32:33,875 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:32:33,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [602989160] [2022-04-28 12:32:33,876 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:32:33,876 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:32:33,876 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:32:33,877 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:32:33,878 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-28 12:32:33,925 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:32:33,925 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:32:33,926 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 80 conjunts are in the unsatisfiable core [2022-04-28 12:32:33,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:32:33,936 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:32:34,736 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 12:32:34,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#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; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#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; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,737 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 12:32:34,738 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,738 INFO L290 TraceCheckUtils]: 17: Hoare triple {85407#(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; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,738 INFO L290 TraceCheckUtils]: 18: Hoare triple {85407#(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 < 50);havoc #t~post6; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,739 INFO L290 TraceCheckUtils]: 19: Hoare triple {85407#(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; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,739 INFO L290 TraceCheckUtils]: 20: Hoare triple {85417#(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; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,739 INFO L290 TraceCheckUtils]: 21: Hoare triple {85417#(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 < 50);havoc #t~post7; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,740 INFO L290 TraceCheckUtils]: 22: Hoare triple {85417#(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); {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,740 INFO L290 TraceCheckUtils]: 23: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,740 INFO L290 TraceCheckUtils]: 24: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,740 INFO L290 TraceCheckUtils]: 25: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,741 INFO L290 TraceCheckUtils]: 26: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,741 INFO L290 TraceCheckUtils]: 27: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,741 INFO L290 TraceCheckUtils]: 28: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,742 INFO L290 TraceCheckUtils]: 30: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,742 INFO L290 TraceCheckUtils]: 31: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,742 INFO L272 TraceCheckUtils]: 32: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,742 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,743 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,743 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,743 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,743 INFO L272 TraceCheckUtils]: 37: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,743 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,743 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,743 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,744 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #100#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,744 INFO L272 TraceCheckUtils]: 42: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,744 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,744 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,744 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,745 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #102#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,745 INFO L272 TraceCheckUtils]: 47: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,745 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,745 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,745 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,745 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #104#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,746 INFO L290 TraceCheckUtils]: 52: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,746 INFO L290 TraceCheckUtils]: 53: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,746 INFO L290 TraceCheckUtils]: 54: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 12:32:34,746 INFO L272 TraceCheckUtils]: 55: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,747 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:34,747 INFO L290 TraceCheckUtils]: 57: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:34,747 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:34,748 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #98#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,748 INFO L272 TraceCheckUtils]: 60: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,766 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:34,766 INFO L290 TraceCheckUtils]: 62: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:34,766 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:34,767 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,767 INFO L272 TraceCheckUtils]: 65: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,767 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:32:34,767 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:32:34,767 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:32:34,768 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,768 INFO L272 TraceCheckUtils]: 70: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:32:34,768 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:34,768 INFO L290 TraceCheckUtils]: 72: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:34,768 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:32:34,769 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,769 INFO L290 TraceCheckUtils]: 75: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,770 INFO L290 TraceCheckUtils]: 76: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~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; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,771 INFO L290 TraceCheckUtils]: 77: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ 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; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,771 INFO L290 TraceCheckUtils]: 78: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,771 INFO L290 TraceCheckUtils]: 79: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:32:34,772 INFO L290 TraceCheckUtils]: 80: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ 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; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,772 INFO L290 TraceCheckUtils]: 81: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,772 INFO L290 TraceCheckUtils]: 82: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,773 INFO L290 TraceCheckUtils]: 83: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !(0 != ~b~0); {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 12:32:34,773 INFO L272 TraceCheckUtils]: 84: Hoare triple {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:32:34,773 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:32:34,774 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 12:32:34,774 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 12:32:34,774 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-28 12:32:34,774 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:33:53,894 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 12:33:53,895 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 12:33:53,895 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:33:53,896 INFO L272 TraceCheckUtils]: 84: Hoare triple {85643#(= (+ (* 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)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:33:53,896 INFO L290 TraceCheckUtils]: 83: Hoare triple {85647#(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); {85643#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:33:53,897 INFO L290 TraceCheckUtils]: 82: Hoare triple {85647#(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 < 50);havoc #t~post6; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:33:53,897 INFO L290 TraceCheckUtils]: 81: Hoare triple {85647#(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; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:33:54,161 INFO L290 TraceCheckUtils]: 80: Hoare triple {85657#(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; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:33:54,162 INFO L290 TraceCheckUtils]: 79: Hoare triple {85657#(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); {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,163 INFO L290 TraceCheckUtils]: 78: Hoare triple {85657#(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 < 50);havoc #t~post7; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,163 INFO L290 TraceCheckUtils]: 77: Hoare triple {85657#(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; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,354 INFO L290 TraceCheckUtils]: 76: Hoare triple {85670#(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; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,355 INFO L290 TraceCheckUtils]: 75: Hoare triple {85670#(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); {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,356 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,356 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:33:54,356 INFO L290 TraceCheckUtils]: 72: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:33:54,357 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:33:54,357 INFO L272 TraceCheckUtils]: 70: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,358 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,358 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,358 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,358 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,358 INFO L272 TraceCheckUtils]: 65: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,359 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85709#(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_~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; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,359 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:33:54,359 INFO L290 TraceCheckUtils]: 62: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:33:54,360 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:33:54,360 INFO L272 TraceCheckUtils]: 60: Hoare triple {85709#(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_~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)); {85354#true} is VALID [2022-04-28 12:33:54,361 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85725#(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_~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; {85709#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,361 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:33:54,361 INFO L290 TraceCheckUtils]: 57: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:33:54,362 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:33:54,362 INFO L272 TraceCheckUtils]: 55: Hoare triple {85725#(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_~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)); {85354#true} is VALID [2022-04-28 12:33:54,362 INFO L290 TraceCheckUtils]: 54: Hoare triple {85725#(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_~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 < 50);havoc #t~post8; {85725#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,363 INFO L290 TraceCheckUtils]: 53: Hoare triple {85725#(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_~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; {85725#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,518 INFO L290 TraceCheckUtils]: 52: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85725#(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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:33:54,519 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,519 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,519 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,519 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,520 INFO L272 TraceCheckUtils]: 47: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,520 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,520 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,520 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,521 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,521 INFO L272 TraceCheckUtils]: 42: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,521 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,521 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,522 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,522 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,522 INFO L272 TraceCheckUtils]: 37: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,522 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,522 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,523 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,523 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,523 INFO L272 TraceCheckUtils]: 32: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,523 INFO L290 TraceCheckUtils]: 31: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,525 INFO L290 TraceCheckUtils]: 29: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 12:33:54,525 INFO L290 TraceCheckUtils]: 28: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 50);havoc #t~post7; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 12:33:54,526 INFO L290 TraceCheckUtils]: 27: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 26: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 25: Hoare triple {85354#true} assume !!(#t~post6 < 50);havoc #t~post6; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 23: Hoare triple {85354#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; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 22: Hoare triple {85354#true} assume !(~c~0 >= ~b~0); {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 21: Hoare triple {85354#true} assume !!(#t~post7 < 50);havoc #t~post7; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {85354#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 18: Hoare triple {85354#true} assume !!(#t~post6 < 50);havoc #t~post6; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#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; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#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; {85354#true} is VALID [2022-04-28 12:33:54,529 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 12:33:54,530 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-28 12:33:54,530 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:33:54,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [799631625] [2022-04-28 12:33:54,530 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:33:54,530 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [602989160] [2022-04-28 12:33:54,530 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [602989160] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:33:54,530 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:33:54,530 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 26 [2022-04-28 12:33:54,531 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:33:54,531 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [517789353] [2022-04-28 12:33:54,531 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [517789353] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:33:54,531 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:33:54,531 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 12:33:54,531 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1774348493] [2022-04-28 12:33:54,531 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:33:54,531 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 12:33:54,531 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:33:54,531 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:33:54,602 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:33:54,602 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 12:33:54,602 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:33:54,602 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 12:33:54,602 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=537, Unknown=0, NotChecked=0, Total=650 [2022-04-28 12:33:54,602 INFO L87 Difference]: Start difference. First operand 957 states and 1270 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:00,236 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:00,237 INFO L93 Difference]: Finished difference Result 1073 states and 1433 transitions. [2022-04-28 12:34:00,237 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 12:34:00,237 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 12:34:00,237 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:34:00,237 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:00,238 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 12:34:00,239 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:00,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 12:34:00,240 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 202 transitions. [2022-04-28 12:34:00,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:00,459 INFO L225 Difference]: With dead ends: 1073 [2022-04-28 12:34:00,459 INFO L226 Difference]: Without dead ends: 1070 [2022-04-28 12:34:00,460 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 150 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=154, Invalid=776, Unknown=0, NotChecked=0, Total=930 [2022-04-28 12:34:00,460 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 91 mSDsluCounter, 551 mSDsCounter, 0 mSdLazyCounter, 1071 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 626 SdHoareTripleChecker+Invalid, 1146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 1071 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:34:00,460 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [111 Valid, 626 Invalid, 1146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 1071 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-28 12:34:00,461 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1070 states. [2022-04-28 12:34:03,299 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1070 to 1027. [2022-04-28 12:34:03,299 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:34:03,300 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:03,301 INFO L74 IsIncluded]: Start isIncluded. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:03,301 INFO L87 Difference]: Start difference. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:03,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:03,336 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 12:34:03,336 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 12:34:03,338 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:03,338 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:03,339 INFO L74 IsIncluded]: Start isIncluded. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 12:34:03,339 INFO L87 Difference]: Start difference. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 12:34:03,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:03,374 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 12:34:03,374 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 12:34:03,376 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:03,376 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:03,376 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:34:03,376 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:34:03,377 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:03,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1027 states to 1027 states and 1375 transitions. [2022-04-28 12:34:03,428 INFO L78 Accepts]: Start accepts. Automaton has 1027 states and 1375 transitions. Word has length 88 [2022-04-28 12:34:03,428 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:34:03,428 INFO L495 AbstractCegarLoop]: Abstraction has 1027 states and 1375 transitions. [2022-04-28 12:34:03,428 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:03,428 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1027 states and 1375 transitions. [2022-04-28 12:34:06,046 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1375 edges. 1375 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:06,047 INFO L276 IsEmpty]: Start isEmpty. Operand 1027 states and 1375 transitions. [2022-04-28 12:34:06,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 12:34:06,047 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:34:06,047 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 2, 2, 2, 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] [2022-04-28 12:34:06,065 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Forceful destruction successful, exit code 0 [2022-04-28 12:34:06,264 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable30 [2022-04-28 12:34:06,264 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:34:06,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:34:06,264 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 5 times [2022-04-28 12:34:06,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:06,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [591688304] [2022-04-28 12:34:06,265 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:34:06,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 6 times [2022-04-28 12:34:06,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:34:06,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [105910167] [2022-04-28 12:34:06,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:34:06,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:34:06,303 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:34:06,303 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [346266224] [2022-04-28 12:34:06,303 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:34:06,303 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:06,304 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:34:06,304 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:34:06,323 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-28 12:34:06,389 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 12:34:06,389 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:34:06,390 INFO L263 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 12:34:06,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:34:06,427 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:34:06,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 12:34:06,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#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; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,763 INFO L290 TraceCheckUtils]: 2: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,763 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92265#(<= ~counter~0 0)} {92257#true} #108#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,763 INFO L272 TraceCheckUtils]: 4: Hoare triple {92265#(<= ~counter~0 0)} call #t~ret9 := main(); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,763 INFO L290 TraceCheckUtils]: 5: Hoare triple {92265#(<= ~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; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,764 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #94#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,765 INFO L272 TraceCheckUtils]: 11: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,765 INFO L290 TraceCheckUtils]: 14: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,765 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #96#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {92265#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:06,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {92265#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:06,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {92314#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:06,767 INFO L290 TraceCheckUtils]: 19: Hoare triple {92314#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:06,768 INFO L290 TraceCheckUtils]: 20: Hoare triple {92314#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:06,768 INFO L290 TraceCheckUtils]: 21: Hoare triple {92324#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:06,768 INFO L290 TraceCheckUtils]: 22: Hoare triple {92324#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:06,769 INFO L290 TraceCheckUtils]: 23: Hoare triple {92324#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,769 INFO L290 TraceCheckUtils]: 24: Hoare triple {92334#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,770 INFO L272 TraceCheckUtils]: 25: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,770 INFO L290 TraceCheckUtils]: 26: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,770 INFO L290 TraceCheckUtils]: 27: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,770 INFO L290 TraceCheckUtils]: 28: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,771 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #98#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,771 INFO L272 TraceCheckUtils]: 30: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,771 INFO L290 TraceCheckUtils]: 31: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,771 INFO L290 TraceCheckUtils]: 32: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,772 INFO L290 TraceCheckUtils]: 33: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,772 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #100#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,772 INFO L272 TraceCheckUtils]: 35: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,772 INFO L290 TraceCheckUtils]: 36: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,773 INFO L290 TraceCheckUtils]: 37: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,773 INFO L290 TraceCheckUtils]: 38: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,773 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #102#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,773 INFO L272 TraceCheckUtils]: 40: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,774 INFO L290 TraceCheckUtils]: 41: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,774 INFO L290 TraceCheckUtils]: 42: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,774 INFO L290 TraceCheckUtils]: 43: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,774 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #104#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,774 INFO L290 TraceCheckUtils]: 45: Hoare triple {92334#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,775 INFO L290 TraceCheckUtils]: 46: Hoare triple {92334#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:06,775 INFO L290 TraceCheckUtils]: 47: Hoare triple {92334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:06,776 INFO L290 TraceCheckUtils]: 48: Hoare triple {92407#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:06,776 INFO L290 TraceCheckUtils]: 49: Hoare triple {92407#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {92407#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:06,776 INFO L290 TraceCheckUtils]: 50: Hoare triple {92407#(<= ~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; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:06,777 INFO L290 TraceCheckUtils]: 51: Hoare triple {92407#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:06,777 INFO L290 TraceCheckUtils]: 52: Hoare triple {92420#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:06,777 INFO L290 TraceCheckUtils]: 53: Hoare triple {92420#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:06,778 INFO L290 TraceCheckUtils]: 54: Hoare triple {92420#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:06,778 INFO L290 TraceCheckUtils]: 55: Hoare triple {92430#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:06,778 INFO L290 TraceCheckUtils]: 56: Hoare triple {92430#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:06,779 INFO L290 TraceCheckUtils]: 57: Hoare triple {92430#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,779 INFO L290 TraceCheckUtils]: 58: Hoare triple {92440#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,779 INFO L272 TraceCheckUtils]: 59: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,779 INFO L290 TraceCheckUtils]: 60: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,780 INFO L290 TraceCheckUtils]: 61: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,780 INFO L290 TraceCheckUtils]: 62: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,780 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #98#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,780 INFO L272 TraceCheckUtils]: 64: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,781 INFO L290 TraceCheckUtils]: 65: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,781 INFO L290 TraceCheckUtils]: 66: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,781 INFO L290 TraceCheckUtils]: 67: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,781 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #100#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,782 INFO L272 TraceCheckUtils]: 69: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,782 INFO L290 TraceCheckUtils]: 70: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,782 INFO L290 TraceCheckUtils]: 71: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,782 INFO L290 TraceCheckUtils]: 72: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,783 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #102#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,783 INFO L272 TraceCheckUtils]: 74: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,783 INFO L290 TraceCheckUtils]: 75: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,783 INFO L290 TraceCheckUtils]: 76: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,783 INFO L290 TraceCheckUtils]: 77: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,784 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #104#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,784 INFO L290 TraceCheckUtils]: 79: Hoare triple {92440#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,784 INFO L290 TraceCheckUtils]: 80: Hoare triple {92440#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:06,785 INFO L290 TraceCheckUtils]: 81: Hoare triple {92440#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:06,785 INFO L290 TraceCheckUtils]: 82: Hoare triple {92513#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:06,785 INFO L290 TraceCheckUtils]: 83: Hoare triple {92513#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {92513#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:06,785 INFO L290 TraceCheckUtils]: 84: Hoare triple {92513#(<= ~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; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:06,786 INFO L290 TraceCheckUtils]: 85: Hoare triple {92513#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92526#(<= |main_#t~post6| 8)} is VALID [2022-04-28 12:34:06,786 INFO L290 TraceCheckUtils]: 86: Hoare triple {92526#(<= |main_#t~post6| 8)} assume !(#t~post6 < 50);havoc #t~post6; {92258#false} is VALID [2022-04-28 12:34:06,786 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#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)); {92258#false} is VALID [2022-04-28 12:34:06,786 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 12:34:06,786 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 12:34:06,786 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 12:34:06,786 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 98 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:34:06,786 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:34:07,071 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 12:34:07,071 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 12:34:07,071 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 12:34:07,071 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#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)); {92258#false} is VALID [2022-04-28 12:34:07,071 INFO L290 TraceCheckUtils]: 86: Hoare triple {92554#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {92258#false} is VALID [2022-04-28 12:34:07,072 INFO L290 TraceCheckUtils]: 85: Hoare triple {92558#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92554#(< |main_#t~post6| 50)} is VALID [2022-04-28 12:34:07,072 INFO L290 TraceCheckUtils]: 84: Hoare triple {92558#(< ~counter~0 50)} ~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; {92558#(< ~counter~0 50)} is VALID [2022-04-28 12:34:07,072 INFO L290 TraceCheckUtils]: 83: Hoare triple {92558#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {92558#(< ~counter~0 50)} is VALID [2022-04-28 12:34:07,072 INFO L290 TraceCheckUtils]: 82: Hoare triple {92558#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {92558#(< ~counter~0 50)} is VALID [2022-04-28 12:34:07,074 INFO L290 TraceCheckUtils]: 81: Hoare triple {92571#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92558#(< ~counter~0 50)} is VALID [2022-04-28 12:34:07,074 INFO L290 TraceCheckUtils]: 80: Hoare triple {92571#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,074 INFO L290 TraceCheckUtils]: 79: Hoare triple {92571#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,074 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #104#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,075 INFO L290 TraceCheckUtils]: 77: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L290 TraceCheckUtils]: 76: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L290 TraceCheckUtils]: 75: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L272 TraceCheckUtils]: 74: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #102#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,075 INFO L290 TraceCheckUtils]: 72: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L290 TraceCheckUtils]: 71: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L290 TraceCheckUtils]: 70: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,075 INFO L272 TraceCheckUtils]: 69: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,076 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #100#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,076 INFO L290 TraceCheckUtils]: 67: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,076 INFO L290 TraceCheckUtils]: 66: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,076 INFO L290 TraceCheckUtils]: 65: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,076 INFO L272 TraceCheckUtils]: 64: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,076 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92257#true} {92571#(< ~counter~0 49)} #98#return; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,076 INFO L290 TraceCheckUtils]: 62: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,077 INFO L290 TraceCheckUtils]: 61: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,077 INFO L290 TraceCheckUtils]: 60: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,077 INFO L272 TraceCheckUtils]: 59: Hoare triple {92571#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,077 INFO L290 TraceCheckUtils]: 58: Hoare triple {92571#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,078 INFO L290 TraceCheckUtils]: 57: Hoare triple {92644#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92571#(< ~counter~0 49)} is VALID [2022-04-28 12:34:07,078 INFO L290 TraceCheckUtils]: 56: Hoare triple {92644#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92644#(< ~counter~0 48)} is VALID [2022-04-28 12:34:07,078 INFO L290 TraceCheckUtils]: 55: Hoare triple {92644#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {92644#(< ~counter~0 48)} is VALID [2022-04-28 12:34:07,079 INFO L290 TraceCheckUtils]: 54: Hoare triple {92654#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92644#(< ~counter~0 48)} is VALID [2022-04-28 12:34:07,079 INFO L290 TraceCheckUtils]: 53: Hoare triple {92654#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92654#(< ~counter~0 47)} is VALID [2022-04-28 12:34:07,079 INFO L290 TraceCheckUtils]: 52: Hoare triple {92654#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {92654#(< ~counter~0 47)} is VALID [2022-04-28 12:34:07,080 INFO L290 TraceCheckUtils]: 51: Hoare triple {92664#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92654#(< ~counter~0 47)} is VALID [2022-04-28 12:34:07,080 INFO L290 TraceCheckUtils]: 50: Hoare triple {92664#(< ~counter~0 46)} ~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; {92664#(< ~counter~0 46)} is VALID [2022-04-28 12:34:07,080 INFO L290 TraceCheckUtils]: 49: Hoare triple {92664#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {92664#(< ~counter~0 46)} is VALID [2022-04-28 12:34:07,080 INFO L290 TraceCheckUtils]: 48: Hoare triple {92664#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {92664#(< ~counter~0 46)} is VALID [2022-04-28 12:34:07,081 INFO L290 TraceCheckUtils]: 47: Hoare triple {92677#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92664#(< ~counter~0 46)} is VALID [2022-04-28 12:34:07,081 INFO L290 TraceCheckUtils]: 46: Hoare triple {92677#(< ~counter~0 45)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,081 INFO L290 TraceCheckUtils]: 45: Hoare triple {92677#(< ~counter~0 45)} assume !(~c~0 >= 2 * ~v~0); {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,081 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #104#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,082 INFO L290 TraceCheckUtils]: 43: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L290 TraceCheckUtils]: 42: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L290 TraceCheckUtils]: 41: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L272 TraceCheckUtils]: 40: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #102#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,082 INFO L290 TraceCheckUtils]: 38: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L290 TraceCheckUtils]: 37: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L290 TraceCheckUtils]: 36: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,082 INFO L272 TraceCheckUtils]: 35: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #100#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,083 INFO L290 TraceCheckUtils]: 33: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L290 TraceCheckUtils]: 32: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L290 TraceCheckUtils]: 31: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L272 TraceCheckUtils]: 30: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92257#true} {92677#(< ~counter~0 45)} #98#return; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,083 INFO L290 TraceCheckUtils]: 28: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L290 TraceCheckUtils]: 27: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,083 INFO L290 TraceCheckUtils]: 26: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,084 INFO L272 TraceCheckUtils]: 25: Hoare triple {92677#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,084 INFO L290 TraceCheckUtils]: 24: Hoare triple {92677#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,084 INFO L290 TraceCheckUtils]: 23: Hoare triple {92750#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92677#(< ~counter~0 45)} is VALID [2022-04-28 12:34:07,085 INFO L290 TraceCheckUtils]: 22: Hoare triple {92750#(< ~counter~0 44)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92750#(< ~counter~0 44)} is VALID [2022-04-28 12:34:07,085 INFO L290 TraceCheckUtils]: 21: Hoare triple {92750#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {92750#(< ~counter~0 44)} is VALID [2022-04-28 12:34:07,085 INFO L290 TraceCheckUtils]: 20: Hoare triple {92760#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92750#(< ~counter~0 44)} is VALID [2022-04-28 12:34:07,086 INFO L290 TraceCheckUtils]: 19: Hoare triple {92760#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92760#(< ~counter~0 43)} is VALID [2022-04-28 12:34:07,086 INFO L290 TraceCheckUtils]: 18: Hoare triple {92760#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {92760#(< ~counter~0 43)} is VALID [2022-04-28 12:34:07,086 INFO L290 TraceCheckUtils]: 17: Hoare triple {92770#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92760#(< ~counter~0 43)} is VALID [2022-04-28 12:34:07,087 INFO L290 TraceCheckUtils]: 16: Hoare triple {92770#(< ~counter~0 42)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,087 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92257#true} {92770#(< ~counter~0 42)} #96#return; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,087 INFO L290 TraceCheckUtils]: 14: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,087 INFO L290 TraceCheckUtils]: 13: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,087 INFO L290 TraceCheckUtils]: 12: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,087 INFO L272 TraceCheckUtils]: 11: Hoare triple {92770#(< ~counter~0 42)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,087 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92257#true} {92770#(< ~counter~0 42)} #94#return; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 12:34:07,088 INFO L290 TraceCheckUtils]: 8: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 12:34:07,088 INFO L290 TraceCheckUtils]: 7: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 12:34:07,088 INFO L272 TraceCheckUtils]: 6: Hoare triple {92770#(< ~counter~0 42)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 12:34:07,088 INFO L290 TraceCheckUtils]: 5: Hoare triple {92770#(< ~counter~0 42)} 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; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,088 INFO L272 TraceCheckUtils]: 4: Hoare triple {92770#(< ~counter~0 42)} call #t~ret9 := main(); {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,088 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92770#(< ~counter~0 42)} {92257#true} #108#return; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,089 INFO L290 TraceCheckUtils]: 2: Hoare triple {92770#(< ~counter~0 42)} assume true; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,089 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#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; {92770#(< ~counter~0 42)} is VALID [2022-04-28 12:34:07,089 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 12:34:07,089 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 34 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:34:07,089 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:34:07,089 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [105910167] [2022-04-28 12:34:07,089 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:34:07,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [346266224] [2022-04-28 12:34:07,090 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [346266224] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:34:07,090 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:34:07,090 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 12:34:07,090 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:34:07,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [591688304] [2022-04-28 12:34:07,090 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [591688304] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:34:07,090 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:34:07,090 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 12:34:07,090 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1310135239] [2022-04-28 12:34:07,090 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:34:07,091 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 12:34:07,091 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:34:07,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:07,134 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-28 12:34:07,134 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 12:34:07,134 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:07,135 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 12:34:07,135 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:34:07,135 INFO L87 Difference]: Start difference. First operand 1027 states and 1375 transitions. Second operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:09,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:09,340 INFO L93 Difference]: Finished difference Result 1062 states and 1410 transitions. [2022-04-28 12:34:09,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 12:34:09,341 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 12:34:09,341 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:34:09,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:09,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 12:34:09,342 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:09,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 12:34:09,344 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 208 transitions. [2022-04-28 12:34:09,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:09,569 INFO L225 Difference]: With dead ends: 1062 [2022-04-28 12:34:09,569 INFO L226 Difference]: Without dead ends: 1055 [2022-04-28 12:34:09,570 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=312, Invalid=444, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:34:09,570 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 157 mSDsluCounter, 227 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:34:09,570 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [157 Valid, 296 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:34:09,571 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1055 states. [2022-04-28 12:34:11,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1055 to 1038. [2022-04-28 12:34:11,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:34:11,214 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:11,214 INFO L74 IsIncluded]: Start isIncluded. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:11,215 INFO L87 Difference]: Start difference. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:11,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:11,249 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 12:34:11,249 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 12:34:11,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:11,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:11,251 INFO L74 IsIncluded]: Start isIncluded. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 12:34:11,252 INFO L87 Difference]: Start difference. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 12:34:11,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:11,286 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 12:34:11,286 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 12:34:11,288 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:11,288 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:11,288 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:34:11,288 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:34:11,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:11,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1038 states to 1038 states and 1386 transitions. [2022-04-28 12:34:11,340 INFO L78 Accepts]: Start accepts. Automaton has 1038 states and 1386 transitions. Word has length 91 [2022-04-28 12:34:11,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:34:11,341 INFO L495 AbstractCegarLoop]: Abstraction has 1038 states and 1386 transitions. [2022-04-28 12:34:11,341 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:11,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1038 states and 1386 transitions. [2022-04-28 12:34:13,772 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1386 edges. 1386 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:13,772 INFO L276 IsEmpty]: Start isEmpty. Operand 1038 states and 1386 transitions. [2022-04-28 12:34:13,773 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-28 12:34:13,773 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:34:13,773 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:34:13,789 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Ended with exit code 0 [2022-04-28 12:34:13,974 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:13,974 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:34:13,974 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:34:13,974 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 1 times [2022-04-28 12:34:13,974 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:13,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1547022938] [2022-04-28 12:34:13,975 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:34:13,975 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 2 times [2022-04-28 12:34:13,975 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:34:13,975 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [340195441] [2022-04-28 12:34:13,975 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:34:13,975 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:34:13,993 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:34:13,994 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [557478431] [2022-04-28 12:34:13,994 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:34:13,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:13,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:34:13,995 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:34:14,032 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-28 12:34:14,054 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:34:14,054 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:34:14,055 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 12:34:14,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:34:14,073 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:34:14,475 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 12:34:14,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#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; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,476 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99154#(<= ~counter~0 0)} {99146#true} #108#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,476 INFO L272 TraceCheckUtils]: 4: Hoare triple {99154#(<= ~counter~0 0)} call #t~ret9 := main(); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,477 INFO L290 TraceCheckUtils]: 5: Hoare triple {99154#(<= ~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; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,477 INFO L272 TraceCheckUtils]: 6: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,477 INFO L290 TraceCheckUtils]: 7: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,477 INFO L290 TraceCheckUtils]: 8: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,478 INFO L290 TraceCheckUtils]: 9: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,478 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #94#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,478 INFO L272 TraceCheckUtils]: 11: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,478 INFO L290 TraceCheckUtils]: 12: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,479 INFO L290 TraceCheckUtils]: 13: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,479 INFO L290 TraceCheckUtils]: 14: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,479 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #96#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {99154#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:14,481 INFO L290 TraceCheckUtils]: 17: Hoare triple {99154#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:14,481 INFO L290 TraceCheckUtils]: 18: Hoare triple {99203#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:14,481 INFO L290 TraceCheckUtils]: 19: Hoare triple {99203#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:14,482 INFO L290 TraceCheckUtils]: 20: Hoare triple {99203#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:14,482 INFO L290 TraceCheckUtils]: 21: Hoare triple {99213#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:14,483 INFO L290 TraceCheckUtils]: 22: Hoare triple {99213#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {99213#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:14,483 INFO L290 TraceCheckUtils]: 23: Hoare triple {99213#(<= ~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; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:14,483 INFO L290 TraceCheckUtils]: 24: Hoare triple {99213#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:14,484 INFO L290 TraceCheckUtils]: 25: Hoare triple {99226#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:14,484 INFO L290 TraceCheckUtils]: 26: Hoare triple {99226#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:14,484 INFO L290 TraceCheckUtils]: 27: Hoare triple {99226#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:14,485 INFO L290 TraceCheckUtils]: 28: Hoare triple {99236#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:14,485 INFO L290 TraceCheckUtils]: 29: Hoare triple {99236#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:14,486 INFO L290 TraceCheckUtils]: 30: Hoare triple {99236#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,486 INFO L290 TraceCheckUtils]: 31: Hoare triple {99246#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,486 INFO L272 TraceCheckUtils]: 32: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,486 INFO L290 TraceCheckUtils]: 33: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,486 INFO L290 TraceCheckUtils]: 34: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,487 INFO L290 TraceCheckUtils]: 35: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,487 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #98#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,487 INFO L272 TraceCheckUtils]: 37: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,487 INFO L290 TraceCheckUtils]: 38: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,488 INFO L290 TraceCheckUtils]: 39: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,488 INFO L290 TraceCheckUtils]: 40: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,488 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #100#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,488 INFO L272 TraceCheckUtils]: 42: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,489 INFO L290 TraceCheckUtils]: 43: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,489 INFO L290 TraceCheckUtils]: 44: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,489 INFO L290 TraceCheckUtils]: 45: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,489 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #102#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,490 INFO L272 TraceCheckUtils]: 47: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,490 INFO L290 TraceCheckUtils]: 48: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,490 INFO L290 TraceCheckUtils]: 49: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,490 INFO L290 TraceCheckUtils]: 50: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,490 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #104#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,491 INFO L290 TraceCheckUtils]: 52: Hoare triple {99246#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:14,491 INFO L290 TraceCheckUtils]: 53: Hoare triple {99246#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,492 INFO L290 TraceCheckUtils]: 54: Hoare triple {99316#(<= ~counter~0 6)} assume !!(#t~post8 < 50);havoc #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,492 INFO L272 TraceCheckUtils]: 55: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,492 INFO L290 TraceCheckUtils]: 56: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,492 INFO L290 TraceCheckUtils]: 57: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,492 INFO L290 TraceCheckUtils]: 58: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,493 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #98#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,493 INFO L272 TraceCheckUtils]: 60: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,493 INFO L290 TraceCheckUtils]: 61: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,493 INFO L290 TraceCheckUtils]: 62: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,494 INFO L290 TraceCheckUtils]: 63: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,494 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #100#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,494 INFO L272 TraceCheckUtils]: 65: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,495 INFO L290 TraceCheckUtils]: 66: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,495 INFO L290 TraceCheckUtils]: 67: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,495 INFO L290 TraceCheckUtils]: 68: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,495 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #102#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,495 INFO L272 TraceCheckUtils]: 70: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,496 INFO L290 TraceCheckUtils]: 71: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,496 INFO L290 TraceCheckUtils]: 72: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,496 INFO L290 TraceCheckUtils]: 73: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,496 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #104#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,496 INFO L290 TraceCheckUtils]: 75: Hoare triple {99316#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,497 INFO L290 TraceCheckUtils]: 76: Hoare triple {99316#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:14,497 INFO L290 TraceCheckUtils]: 77: Hoare triple {99316#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:14,498 INFO L290 TraceCheckUtils]: 78: Hoare triple {99389#(<= ~counter~0 7)} assume !!(#t~post7 < 50);havoc #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:14,498 INFO L290 TraceCheckUtils]: 79: Hoare triple {99389#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {99389#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:14,498 INFO L290 TraceCheckUtils]: 80: Hoare triple {99389#(<= ~counter~0 7)} ~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; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:14,499 INFO L290 TraceCheckUtils]: 81: Hoare triple {99389#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:14,499 INFO L290 TraceCheckUtils]: 82: Hoare triple {99402#(<= ~counter~0 8)} assume !!(#t~post6 < 50);havoc #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:14,499 INFO L290 TraceCheckUtils]: 83: Hoare triple {99402#(<= ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 84: Hoare triple {99402#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99412#(<= |main_#t~post7| 8)} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 85: Hoare triple {99412#(<= |main_#t~post7| 8)} assume !(#t~post7 < 50);havoc #t~post7; {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#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; {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 50);havoc #t~post6; {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#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)); {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 12:34:14,501 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 12:34:14,502 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 96 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:34:14,502 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:34:14,783 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 12:34:14,783 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 12:34:14,783 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 12:34:14,783 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#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)); {99147#false} is VALID [2022-04-28 12:34:14,783 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 50);havoc #t~post6; {99147#false} is VALID [2022-04-28 12:34:14,783 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 12:34:14,783 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#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; {99147#false} is VALID [2022-04-28 12:34:14,784 INFO L290 TraceCheckUtils]: 85: Hoare triple {99458#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {99147#false} is VALID [2022-04-28 12:34:14,784 INFO L290 TraceCheckUtils]: 84: Hoare triple {99462#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99458#(< |main_#t~post7| 50)} is VALID [2022-04-28 12:34:14,784 INFO L290 TraceCheckUtils]: 83: Hoare triple {99462#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99462#(< ~counter~0 50)} is VALID [2022-04-28 12:34:14,784 INFO L290 TraceCheckUtils]: 82: Hoare triple {99462#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {99462#(< ~counter~0 50)} is VALID [2022-04-28 12:34:14,786 INFO L290 TraceCheckUtils]: 81: Hoare triple {99472#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99462#(< ~counter~0 50)} is VALID [2022-04-28 12:34:14,786 INFO L290 TraceCheckUtils]: 80: Hoare triple {99472#(< ~counter~0 49)} ~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; {99472#(< ~counter~0 49)} is VALID [2022-04-28 12:34:14,786 INFO L290 TraceCheckUtils]: 79: Hoare triple {99472#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {99472#(< ~counter~0 49)} is VALID [2022-04-28 12:34:14,786 INFO L290 TraceCheckUtils]: 78: Hoare triple {99472#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {99472#(< ~counter~0 49)} is VALID [2022-04-28 12:34:14,787 INFO L290 TraceCheckUtils]: 77: Hoare triple {99485#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99472#(< ~counter~0 49)} is VALID [2022-04-28 12:34:14,787 INFO L290 TraceCheckUtils]: 76: Hoare triple {99485#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,787 INFO L290 TraceCheckUtils]: 75: Hoare triple {99485#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,788 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #104#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,788 INFO L290 TraceCheckUtils]: 73: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,788 INFO L290 TraceCheckUtils]: 72: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,788 INFO L290 TraceCheckUtils]: 71: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,788 INFO L272 TraceCheckUtils]: 70: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,788 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #102#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,788 INFO L290 TraceCheckUtils]: 68: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,788 INFO L290 TraceCheckUtils]: 67: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,789 INFO L290 TraceCheckUtils]: 66: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,789 INFO L272 TraceCheckUtils]: 65: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,789 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #100#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,789 INFO L290 TraceCheckUtils]: 63: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,789 INFO L290 TraceCheckUtils]: 62: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,789 INFO L290 TraceCheckUtils]: 61: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,789 INFO L272 TraceCheckUtils]: 60: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,790 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99146#true} {99485#(< ~counter~0 48)} #98#return; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,790 INFO L290 TraceCheckUtils]: 58: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,790 INFO L290 TraceCheckUtils]: 57: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,790 INFO L290 TraceCheckUtils]: 56: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,790 INFO L272 TraceCheckUtils]: 55: Hoare triple {99485#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,790 INFO L290 TraceCheckUtils]: 54: Hoare triple {99485#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,791 INFO L290 TraceCheckUtils]: 53: Hoare triple {99558#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99485#(< ~counter~0 48)} is VALID [2022-04-28 12:34:14,791 INFO L290 TraceCheckUtils]: 52: Hoare triple {99558#(< ~counter~0 47)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,791 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #104#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,791 INFO L290 TraceCheckUtils]: 50: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,791 INFO L290 TraceCheckUtils]: 49: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,791 INFO L290 TraceCheckUtils]: 48: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,792 INFO L272 TraceCheckUtils]: 47: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,792 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #102#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,792 INFO L290 TraceCheckUtils]: 45: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,792 INFO L290 TraceCheckUtils]: 44: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,792 INFO L290 TraceCheckUtils]: 43: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,792 INFO L272 TraceCheckUtils]: 42: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #100#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,793 INFO L290 TraceCheckUtils]: 40: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L290 TraceCheckUtils]: 39: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L290 TraceCheckUtils]: 38: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L272 TraceCheckUtils]: 37: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99146#true} {99558#(< ~counter~0 47)} #98#return; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,793 INFO L290 TraceCheckUtils]: 35: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L290 TraceCheckUtils]: 34: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L290 TraceCheckUtils]: 33: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,793 INFO L272 TraceCheckUtils]: 32: Hoare triple {99558#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,794 INFO L290 TraceCheckUtils]: 31: Hoare triple {99558#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,794 INFO L290 TraceCheckUtils]: 30: Hoare triple {99628#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99558#(< ~counter~0 47)} is VALID [2022-04-28 12:34:14,794 INFO L290 TraceCheckUtils]: 29: Hoare triple {99628#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99628#(< ~counter~0 46)} is VALID [2022-04-28 12:34:14,795 INFO L290 TraceCheckUtils]: 28: Hoare triple {99628#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {99628#(< ~counter~0 46)} is VALID [2022-04-28 12:34:14,795 INFO L290 TraceCheckUtils]: 27: Hoare triple {99638#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99628#(< ~counter~0 46)} is VALID [2022-04-28 12:34:14,796 INFO L290 TraceCheckUtils]: 26: Hoare triple {99638#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99638#(< ~counter~0 45)} is VALID [2022-04-28 12:34:14,796 INFO L290 TraceCheckUtils]: 25: Hoare triple {99638#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {99638#(< ~counter~0 45)} is VALID [2022-04-28 12:34:14,796 INFO L290 TraceCheckUtils]: 24: Hoare triple {99648#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99638#(< ~counter~0 45)} is VALID [2022-04-28 12:34:14,797 INFO L290 TraceCheckUtils]: 23: Hoare triple {99648#(< ~counter~0 44)} ~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; {99648#(< ~counter~0 44)} is VALID [2022-04-28 12:34:14,797 INFO L290 TraceCheckUtils]: 22: Hoare triple {99648#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {99648#(< ~counter~0 44)} is VALID [2022-04-28 12:34:14,797 INFO L290 TraceCheckUtils]: 21: Hoare triple {99648#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {99648#(< ~counter~0 44)} is VALID [2022-04-28 12:34:14,798 INFO L290 TraceCheckUtils]: 20: Hoare triple {99661#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99648#(< ~counter~0 44)} is VALID [2022-04-28 12:34:14,798 INFO L290 TraceCheckUtils]: 19: Hoare triple {99661#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99661#(< ~counter~0 43)} is VALID [2022-04-28 12:34:14,798 INFO L290 TraceCheckUtils]: 18: Hoare triple {99661#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {99661#(< ~counter~0 43)} is VALID [2022-04-28 12:34:14,799 INFO L290 TraceCheckUtils]: 17: Hoare triple {99671#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99661#(< ~counter~0 43)} is VALID [2022-04-28 12:34:14,823 INFO L290 TraceCheckUtils]: 16: Hoare triple {99671#(< ~counter~0 42)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,823 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99146#true} {99671#(< ~counter~0 42)} #96#return; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,823 INFO L290 TraceCheckUtils]: 14: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L290 TraceCheckUtils]: 13: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L290 TraceCheckUtils]: 12: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L272 TraceCheckUtils]: 11: Hoare triple {99671#(< ~counter~0 42)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99146#true} {99671#(< ~counter~0 42)} #94#return; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L290 TraceCheckUtils]: 8: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L290 TraceCheckUtils]: 7: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L272 TraceCheckUtils]: 6: Hoare triple {99671#(< ~counter~0 42)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 12:34:14,824 INFO L290 TraceCheckUtils]: 5: Hoare triple {99671#(< ~counter~0 42)} 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; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,825 INFO L272 TraceCheckUtils]: 4: Hoare triple {99671#(< ~counter~0 42)} call #t~ret9 := main(); {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,825 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99671#(< ~counter~0 42)} {99146#true} #108#return; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,825 INFO L290 TraceCheckUtils]: 2: Hoare triple {99671#(< ~counter~0 42)} assume true; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#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; {99671#(< ~counter~0 42)} is VALID [2022-04-28 12:34:14,826 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 12:34:14,826 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:34:14,826 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:34:14,826 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [340195441] [2022-04-28 12:34:14,827 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:34:14,827 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [557478431] [2022-04-28 12:34:14,827 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [557478431] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:34:14,827 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:34:14,827 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 12:34:14,827 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:34:14,827 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1547022938] [2022-04-28 12:34:14,827 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1547022938] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:34:14,827 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:34:14,827 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 12:34:14,827 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1025772017] [2022-04-28 12:34:14,827 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:34:14,828 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 12:34:14,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:34:14,828 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), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:14,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:14,913 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 12:34:14,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:14,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 12:34:14,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:34:14,913 INFO L87 Difference]: Start difference. First operand 1038 states and 1386 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:18,219 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:18,219 INFO L93 Difference]: Finished difference Result 1382 states and 1902 transitions. [2022-04-28 12:34:18,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 12:34:18,219 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 12:34:18,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:34:18,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:18,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 12:34:18,221 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:18,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 12:34:18,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 233 transitions. [2022-04-28 12:34:18,387 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:18,439 INFO L225 Difference]: With dead ends: 1382 [2022-04-28 12:34:18,439 INFO L226 Difference]: Without dead ends: 1062 [2022-04-28 12:34:18,440 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 191 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=310, Invalid=446, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:34:18,440 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 140 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 140 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:34:18,441 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [140 Valid, 310 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:34:18,441 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1062 states. [2022-04-28 12:34:20,035 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1062 to 1058. [2022-04-28 12:34:20,035 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:34:20,036 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:20,037 INFO L74 IsIncluded]: Start isIncluded. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:20,037 INFO L87 Difference]: Start difference. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:20,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:20,072 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 12:34:20,072 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 12:34:20,074 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:20,074 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:20,075 INFO L74 IsIncluded]: Start isIncluded. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 12:34:20,075 INFO L87 Difference]: Start difference. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 12:34:20,110 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:20,110 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 12:34:20,110 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 12:34:20,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:20,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:20,112 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:34:20,112 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:34:20,113 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 12:34:20,166 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1058 states to 1058 states and 1405 transitions. [2022-04-28 12:34:20,166 INFO L78 Accepts]: Start accepts. Automaton has 1058 states and 1405 transitions. Word has length 93 [2022-04-28 12:34:20,166 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:34:20,166 INFO L495 AbstractCegarLoop]: Abstraction has 1058 states and 1405 transitions. [2022-04-28 12:34:20,173 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:20,173 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1058 states and 1405 transitions. [2022-04-28 12:34:22,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1405 edges. 1405 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:22,716 INFO L276 IsEmpty]: Start isEmpty. Operand 1058 states and 1405 transitions. [2022-04-28 12:34:22,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 12:34:22,717 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:34:22,717 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 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-28 12:34:22,733 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Forceful destruction successful, exit code 0 [2022-04-28 12:34:22,933 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:22,933 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:34:22,933 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:34:22,933 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 5 times [2022-04-28 12:34:22,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:22,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [371036225] [2022-04-28 12:34:22,934 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:34:22,934 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 6 times [2022-04-28 12:34:22,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:34:22,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1199689924] [2022-04-28 12:34:22,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:34:22,934 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:34:22,951 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:34:22,951 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1957607493] [2022-04-28 12:34:22,952 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:34:22,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:22,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:34:22,952 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:34:22,953 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-28 12:34:23,076 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 12:34:23,076 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:34:23,078 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 12:34:23,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:34:23,094 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:34:23,522 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 12:34:23,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#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; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,523 INFO L290 TraceCheckUtils]: 2: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,523 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106749#(<= ~counter~0 0)} {106741#true} #108#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,523 INFO L272 TraceCheckUtils]: 4: Hoare triple {106749#(<= ~counter~0 0)} call #t~ret9 := main(); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,523 INFO L290 TraceCheckUtils]: 5: Hoare triple {106749#(<= ~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; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,524 INFO L272 TraceCheckUtils]: 6: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,524 INFO L290 TraceCheckUtils]: 7: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,524 INFO L290 TraceCheckUtils]: 8: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,524 INFO L290 TraceCheckUtils]: 9: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,525 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #94#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,525 INFO L272 TraceCheckUtils]: 11: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,526 INFO L290 TraceCheckUtils]: 14: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,526 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #96#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,526 INFO L290 TraceCheckUtils]: 16: Hoare triple {106749#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:23,528 INFO L290 TraceCheckUtils]: 17: Hoare triple {106749#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:23,528 INFO L290 TraceCheckUtils]: 18: Hoare triple {106798#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:23,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {106798#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:23,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {106798#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:23,529 INFO L290 TraceCheckUtils]: 21: Hoare triple {106808#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:23,529 INFO L290 TraceCheckUtils]: 22: Hoare triple {106808#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {106808#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:23,530 INFO L290 TraceCheckUtils]: 23: Hoare triple {106808#(<= ~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; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:23,530 INFO L290 TraceCheckUtils]: 24: Hoare triple {106808#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:23,531 INFO L290 TraceCheckUtils]: 25: Hoare triple {106821#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:23,531 INFO L290 TraceCheckUtils]: 26: Hoare triple {106821#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:23,531 INFO L290 TraceCheckUtils]: 27: Hoare triple {106821#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:23,532 INFO L290 TraceCheckUtils]: 28: Hoare triple {106831#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:23,532 INFO L290 TraceCheckUtils]: 29: Hoare triple {106831#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:23,533 INFO L290 TraceCheckUtils]: 30: Hoare triple {106831#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,533 INFO L290 TraceCheckUtils]: 31: Hoare triple {106841#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,533 INFO L272 TraceCheckUtils]: 32: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,533 INFO L290 TraceCheckUtils]: 33: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,534 INFO L290 TraceCheckUtils]: 34: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,534 INFO L290 TraceCheckUtils]: 35: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,534 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #98#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,535 INFO L272 TraceCheckUtils]: 37: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,535 INFO L290 TraceCheckUtils]: 38: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,535 INFO L290 TraceCheckUtils]: 39: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,535 INFO L290 TraceCheckUtils]: 40: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,536 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #100#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,536 INFO L272 TraceCheckUtils]: 42: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,536 INFO L290 TraceCheckUtils]: 43: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,536 INFO L290 TraceCheckUtils]: 44: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,537 INFO L290 TraceCheckUtils]: 45: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,537 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #102#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,537 INFO L272 TraceCheckUtils]: 47: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,537 INFO L290 TraceCheckUtils]: 48: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,538 INFO L290 TraceCheckUtils]: 49: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,538 INFO L290 TraceCheckUtils]: 50: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,538 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #104#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,538 INFO L290 TraceCheckUtils]: 52: Hoare triple {106841#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,539 INFO L290 TraceCheckUtils]: 53: Hoare triple {106841#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:23,539 INFO L290 TraceCheckUtils]: 54: Hoare triple {106841#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:23,540 INFO L290 TraceCheckUtils]: 55: Hoare triple {106914#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:23,540 INFO L290 TraceCheckUtils]: 56: Hoare triple {106914#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {106914#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:23,540 INFO L290 TraceCheckUtils]: 57: Hoare triple {106914#(<= ~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; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:23,541 INFO L290 TraceCheckUtils]: 58: Hoare triple {106914#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:23,541 INFO L290 TraceCheckUtils]: 59: Hoare triple {106927#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:23,541 INFO L290 TraceCheckUtils]: 60: Hoare triple {106927#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:23,542 INFO L290 TraceCheckUtils]: 61: Hoare triple {106927#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:23,542 INFO L290 TraceCheckUtils]: 62: Hoare triple {106937#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:23,542 INFO L290 TraceCheckUtils]: 63: Hoare triple {106937#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:23,543 INFO L290 TraceCheckUtils]: 64: Hoare triple {106937#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,543 INFO L290 TraceCheckUtils]: 65: Hoare triple {106947#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,544 INFO L272 TraceCheckUtils]: 66: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,544 INFO L290 TraceCheckUtils]: 67: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,544 INFO L290 TraceCheckUtils]: 68: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,544 INFO L290 TraceCheckUtils]: 69: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,545 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #98#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,545 INFO L272 TraceCheckUtils]: 71: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,545 INFO L290 TraceCheckUtils]: 72: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,545 INFO L290 TraceCheckUtils]: 73: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,546 INFO L290 TraceCheckUtils]: 74: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,546 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #100#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,546 INFO L272 TraceCheckUtils]: 76: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,547 INFO L290 TraceCheckUtils]: 77: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,547 INFO L290 TraceCheckUtils]: 78: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,547 INFO L290 TraceCheckUtils]: 79: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,547 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #102#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,548 INFO L272 TraceCheckUtils]: 81: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,548 INFO L290 TraceCheckUtils]: 82: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,548 INFO L290 TraceCheckUtils]: 83: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,548 INFO L290 TraceCheckUtils]: 84: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,549 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #104#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,549 INFO L290 TraceCheckUtils]: 86: Hoare triple {106947#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,549 INFO L290 TraceCheckUtils]: 87: Hoare triple {106947#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:23,549 INFO L290 TraceCheckUtils]: 88: Hoare triple {106947#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107020#(<= |main_#t~post7| 9)} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 89: Hoare triple {107020#(<= |main_#t~post7| 9)} assume !(#t~post7 < 50);havoc #t~post7; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#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; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 50);havoc #t~post6; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#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)); {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 12:34:23,550 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:34:23,550 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:34:23,933 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 12:34:23,933 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 12:34:23,933 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 12:34:23,934 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#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)); {106742#false} is VALID [2022-04-28 12:34:23,934 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 50);havoc #t~post6; {106742#false} is VALID [2022-04-28 12:34:23,934 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 12:34:23,934 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#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; {106742#false} is VALID [2022-04-28 12:34:23,934 INFO L290 TraceCheckUtils]: 89: Hoare triple {107066#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {106742#false} is VALID [2022-04-28 12:34:23,934 INFO L290 TraceCheckUtils]: 88: Hoare triple {107070#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107066#(< |main_#t~post7| 50)} is VALID [2022-04-28 12:34:23,934 INFO L290 TraceCheckUtils]: 87: Hoare triple {107070#(< ~counter~0 50)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,935 INFO L290 TraceCheckUtils]: 86: Hoare triple {107070#(< ~counter~0 50)} assume !(~c~0 >= 2 * ~v~0); {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,935 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #104#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,935 INFO L290 TraceCheckUtils]: 84: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,935 INFO L290 TraceCheckUtils]: 83: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,935 INFO L290 TraceCheckUtils]: 82: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,935 INFO L272 TraceCheckUtils]: 81: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,936 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #102#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,936 INFO L290 TraceCheckUtils]: 79: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,936 INFO L290 TraceCheckUtils]: 78: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,936 INFO L290 TraceCheckUtils]: 77: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,936 INFO L272 TraceCheckUtils]: 76: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,936 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #100#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 74: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 73: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 72: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L272 TraceCheckUtils]: 71: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106741#true} {107070#(< ~counter~0 50)} #98#return; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 69: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 68: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 67: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L272 TraceCheckUtils]: 66: Hoare triple {107070#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,937 INFO L290 TraceCheckUtils]: 65: Hoare triple {107070#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,939 INFO L290 TraceCheckUtils]: 64: Hoare triple {107143#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107070#(< ~counter~0 50)} is VALID [2022-04-28 12:34:23,939 INFO L290 TraceCheckUtils]: 63: Hoare triple {107143#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107143#(< ~counter~0 49)} is VALID [2022-04-28 12:34:23,939 INFO L290 TraceCheckUtils]: 62: Hoare triple {107143#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {107143#(< ~counter~0 49)} is VALID [2022-04-28 12:34:23,940 INFO L290 TraceCheckUtils]: 61: Hoare triple {107153#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107143#(< ~counter~0 49)} is VALID [2022-04-28 12:34:23,940 INFO L290 TraceCheckUtils]: 60: Hoare triple {107153#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107153#(< ~counter~0 48)} is VALID [2022-04-28 12:34:23,941 INFO L290 TraceCheckUtils]: 59: Hoare triple {107153#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {107153#(< ~counter~0 48)} is VALID [2022-04-28 12:34:23,941 INFO L290 TraceCheckUtils]: 58: Hoare triple {107163#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107153#(< ~counter~0 48)} is VALID [2022-04-28 12:34:23,941 INFO L290 TraceCheckUtils]: 57: Hoare triple {107163#(< ~counter~0 47)} ~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; {107163#(< ~counter~0 47)} is VALID [2022-04-28 12:34:23,942 INFO L290 TraceCheckUtils]: 56: Hoare triple {107163#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {107163#(< ~counter~0 47)} is VALID [2022-04-28 12:34:23,942 INFO L290 TraceCheckUtils]: 55: Hoare triple {107163#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {107163#(< ~counter~0 47)} is VALID [2022-04-28 12:34:23,942 INFO L290 TraceCheckUtils]: 54: Hoare triple {107176#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107163#(< ~counter~0 47)} is VALID [2022-04-28 12:34:23,943 INFO L290 TraceCheckUtils]: 53: Hoare triple {107176#(< ~counter~0 46)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,943 INFO L290 TraceCheckUtils]: 52: Hoare triple {107176#(< ~counter~0 46)} assume !(~c~0 >= 2 * ~v~0); {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,943 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #104#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,943 INFO L290 TraceCheckUtils]: 50: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,943 INFO L290 TraceCheckUtils]: 49: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,943 INFO L290 TraceCheckUtils]: 48: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,943 INFO L272 TraceCheckUtils]: 47: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #102#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,944 INFO L290 TraceCheckUtils]: 45: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L290 TraceCheckUtils]: 44: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L290 TraceCheckUtils]: 43: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L272 TraceCheckUtils]: 42: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #100#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,944 INFO L290 TraceCheckUtils]: 40: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L290 TraceCheckUtils]: 39: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,944 INFO L290 TraceCheckUtils]: 38: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,945 INFO L272 TraceCheckUtils]: 37: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,945 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106741#true} {107176#(< ~counter~0 46)} #98#return; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,945 INFO L290 TraceCheckUtils]: 35: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,945 INFO L290 TraceCheckUtils]: 34: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,945 INFO L290 TraceCheckUtils]: 33: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,945 INFO L272 TraceCheckUtils]: 32: Hoare triple {107176#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,945 INFO L290 TraceCheckUtils]: 31: Hoare triple {107176#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,946 INFO L290 TraceCheckUtils]: 30: Hoare triple {107249#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107176#(< ~counter~0 46)} is VALID [2022-04-28 12:34:23,946 INFO L290 TraceCheckUtils]: 29: Hoare triple {107249#(< ~counter~0 45)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107249#(< ~counter~0 45)} is VALID [2022-04-28 12:34:23,946 INFO L290 TraceCheckUtils]: 28: Hoare triple {107249#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {107249#(< ~counter~0 45)} is VALID [2022-04-28 12:34:23,947 INFO L290 TraceCheckUtils]: 27: Hoare triple {107259#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107249#(< ~counter~0 45)} is VALID [2022-04-28 12:34:23,947 INFO L290 TraceCheckUtils]: 26: Hoare triple {107259#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107259#(< ~counter~0 44)} is VALID [2022-04-28 12:34:23,947 INFO L290 TraceCheckUtils]: 25: Hoare triple {107259#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {107259#(< ~counter~0 44)} is VALID [2022-04-28 12:34:23,948 INFO L290 TraceCheckUtils]: 24: Hoare triple {107269#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107259#(< ~counter~0 44)} is VALID [2022-04-28 12:34:23,948 INFO L290 TraceCheckUtils]: 23: Hoare triple {107269#(< ~counter~0 43)} ~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; {107269#(< ~counter~0 43)} is VALID [2022-04-28 12:34:23,948 INFO L290 TraceCheckUtils]: 22: Hoare triple {107269#(< ~counter~0 43)} assume !(~c~0 >= ~b~0); {107269#(< ~counter~0 43)} is VALID [2022-04-28 12:34:23,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {107269#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {107269#(< ~counter~0 43)} is VALID [2022-04-28 12:34:23,949 INFO L290 TraceCheckUtils]: 20: Hoare triple {107282#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107269#(< ~counter~0 43)} is VALID [2022-04-28 12:34:23,949 INFO L290 TraceCheckUtils]: 19: Hoare triple {107282#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107282#(< ~counter~0 42)} is VALID [2022-04-28 12:34:23,950 INFO L290 TraceCheckUtils]: 18: Hoare triple {107282#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {107282#(< ~counter~0 42)} is VALID [2022-04-28 12:34:23,950 INFO L290 TraceCheckUtils]: 17: Hoare triple {107292#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107282#(< ~counter~0 42)} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 16: Hoare triple {107292#(< ~counter~0 41)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,951 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106741#true} {107292#(< ~counter~0 41)} #96#return; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 14: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 12: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,951 INFO L272 TraceCheckUtils]: 11: Hoare triple {107292#(< ~counter~0 41)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,951 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106741#true} {107292#(< ~counter~0 41)} #94#return; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 9: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 8: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 12:34:23,951 INFO L290 TraceCheckUtils]: 7: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 12:34:23,952 INFO L272 TraceCheckUtils]: 6: Hoare triple {107292#(< ~counter~0 41)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 12:34:23,952 INFO L290 TraceCheckUtils]: 5: Hoare triple {107292#(< ~counter~0 41)} 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; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,952 INFO L272 TraceCheckUtils]: 4: Hoare triple {107292#(< ~counter~0 41)} call #t~ret9 := main(); {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,952 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {107292#(< ~counter~0 41)} {106741#true} #108#return; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {107292#(< ~counter~0 41)} assume true; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,953 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#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; {107292#(< ~counter~0 41)} is VALID [2022-04-28 12:34:23,953 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 12:34:23,953 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:34:23,953 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:34:23,953 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1199689924] [2022-04-28 12:34:23,953 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:34:23,953 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1957607493] [2022-04-28 12:34:23,953 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1957607493] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:34:23,956 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:34:23,956 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 12:34:23,956 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:34:23,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [371036225] [2022-04-28 12:34:23,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [371036225] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:34:23,957 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:34:23,957 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 12:34:23,957 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1187082726] [2022-04-28 12:34:23,957 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:34:23,957 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 12:34:23,957 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:34:23,957 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:24,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:24,002 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 12:34:24,002 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:24,002 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 12:34:24,002 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 12:34:24,002 INFO L87 Difference]: Start difference. First operand 1058 states and 1405 transitions. Second operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:27,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:27,361 INFO L93 Difference]: Finished difference Result 1539 states and 2090 transitions. [2022-04-28 12:34:27,361 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 12:34:27,361 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 12:34:27,362 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:34:27,362 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:27,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 12:34:27,363 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:27,365 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 12:34:27,365 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 12:34:27,592 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:27,650 INFO L225 Difference]: With dead ends: 1539 [2022-04-28 12:34:27,650 INFO L226 Difference]: Without dead ends: 1219 [2022-04-28 12:34:27,651 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=384, Invalid=546, Unknown=0, NotChecked=0, Total=930 [2022-04-28 12:34:27,652 INFO L413 NwaCegarLoop]: 73 mSDtfsCounter, 170 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 69 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 69 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:34:27,652 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 328 Invalid, 224 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [69 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:34:27,652 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1219 states. [2022-04-28 12:34:30,213 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1219 to 1164. [2022-04-28 12:34:30,213 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:34:30,214 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 12:34:30,215 INFO L74 IsIncluded]: Start isIncluded. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 12:34:30,216 INFO L87 Difference]: Start difference. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 12:34:30,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:30,259 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 12:34:30,259 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 12:34:30,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:30,261 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:30,261 INFO L74 IsIncluded]: Start isIncluded. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 12:34:30,262 INFO L87 Difference]: Start difference. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 12:34:30,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:30,305 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 12:34:30,305 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 12:34:30,307 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:30,307 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:30,307 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:34:30,307 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:34:30,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 12:34:30,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1164 states to 1164 states and 1539 transitions. [2022-04-28 12:34:30,384 INFO L78 Accepts]: Start accepts. Automaton has 1164 states and 1539 transitions. Word has length 97 [2022-04-28 12:34:30,384 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:34:30,384 INFO L495 AbstractCegarLoop]: Abstraction has 1164 states and 1539 transitions. [2022-04-28 12:34:30,384 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:30,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1164 states and 1539 transitions. [2022-04-28 12:34:33,656 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1539 edges. 1539 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:33,656 INFO L276 IsEmpty]: Start isEmpty. Operand 1164 states and 1539 transitions. [2022-04-28 12:34:33,657 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-28 12:34:33,657 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:34:33,657 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 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] [2022-04-28 12:34:33,674 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-28 12:34:33,858 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2022-04-28 12:34:33,858 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:34:33,858 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:34:33,858 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 7 times [2022-04-28 12:34:33,858 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:33,858 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [94296321] [2022-04-28 12:34:33,859 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:34:33,859 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 8 times [2022-04-28 12:34:33,859 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:34:33,859 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [463253121] [2022-04-28 12:34:33,859 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:34:33,859 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:34:33,883 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:34:33,883 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1071585978] [2022-04-28 12:34:33,883 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:34:33,883 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:33,883 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:34:33,884 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:34:33,885 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-28 12:34:33,942 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:34:33,943 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:34:33,944 INFO L263 TraceCheckSpWp]: Trace formula consists of 301 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 12:34:33,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:34:33,971 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:34:34,433 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 12:34:34,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#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; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,434 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115212#(<= ~counter~0 0)} {115204#true} #108#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,435 INFO L272 TraceCheckUtils]: 4: Hoare triple {115212#(<= ~counter~0 0)} call #t~ret9 := main(); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {115212#(<= ~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; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,435 INFO L272 TraceCheckUtils]: 6: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,435 INFO L290 TraceCheckUtils]: 7: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,436 INFO L290 TraceCheckUtils]: 9: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,436 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #94#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,436 INFO L272 TraceCheckUtils]: 11: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,437 INFO L290 TraceCheckUtils]: 12: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,437 INFO L290 TraceCheckUtils]: 13: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,437 INFO L290 TraceCheckUtils]: 14: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,438 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #96#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {115212#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:34,439 INFO L290 TraceCheckUtils]: 17: Hoare triple {115212#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:34,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {115261#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:34,440 INFO L290 TraceCheckUtils]: 19: Hoare triple {115261#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:34,441 INFO L290 TraceCheckUtils]: 20: Hoare triple {115261#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:34,441 INFO L290 TraceCheckUtils]: 21: Hoare triple {115271#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:34,441 INFO L290 TraceCheckUtils]: 22: Hoare triple {115271#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {115271#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:34,441 INFO L290 TraceCheckUtils]: 23: Hoare triple {115271#(<= ~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; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:34,442 INFO L290 TraceCheckUtils]: 24: Hoare triple {115271#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:34,442 INFO L290 TraceCheckUtils]: 25: Hoare triple {115284#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:34,443 INFO L290 TraceCheckUtils]: 26: Hoare triple {115284#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:34,443 INFO L290 TraceCheckUtils]: 27: Hoare triple {115284#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:34,444 INFO L290 TraceCheckUtils]: 28: Hoare triple {115294#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:34,444 INFO L290 TraceCheckUtils]: 29: Hoare triple {115294#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:34,445 INFO L290 TraceCheckUtils]: 30: Hoare triple {115294#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,445 INFO L290 TraceCheckUtils]: 31: Hoare triple {115304#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,445 INFO L272 TraceCheckUtils]: 32: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,446 INFO L290 TraceCheckUtils]: 33: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,446 INFO L290 TraceCheckUtils]: 34: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,446 INFO L290 TraceCheckUtils]: 35: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,447 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #98#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,447 INFO L272 TraceCheckUtils]: 37: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,447 INFO L290 TraceCheckUtils]: 38: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,448 INFO L290 TraceCheckUtils]: 39: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,448 INFO L290 TraceCheckUtils]: 40: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,448 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #100#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,449 INFO L272 TraceCheckUtils]: 42: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,449 INFO L290 TraceCheckUtils]: 43: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,449 INFO L290 TraceCheckUtils]: 44: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,449 INFO L290 TraceCheckUtils]: 45: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,450 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #102#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,450 INFO L272 TraceCheckUtils]: 47: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,450 INFO L290 TraceCheckUtils]: 48: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,451 INFO L290 TraceCheckUtils]: 49: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,451 INFO L290 TraceCheckUtils]: 50: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,451 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #104#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,452 INFO L290 TraceCheckUtils]: 52: Hoare triple {115304#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,452 INFO L290 TraceCheckUtils]: 53: Hoare triple {115304#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:34,453 INFO L290 TraceCheckUtils]: 54: Hoare triple {115304#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:34,453 INFO L290 TraceCheckUtils]: 55: Hoare triple {115377#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:34,453 INFO L290 TraceCheckUtils]: 56: Hoare triple {115377#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {115377#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:34,453 INFO L290 TraceCheckUtils]: 57: Hoare triple {115377#(<= ~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; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:34,454 INFO L290 TraceCheckUtils]: 58: Hoare triple {115377#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:34,454 INFO L290 TraceCheckUtils]: 59: Hoare triple {115390#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:34,455 INFO L290 TraceCheckUtils]: 60: Hoare triple {115390#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:34,455 INFO L290 TraceCheckUtils]: 61: Hoare triple {115390#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:34,456 INFO L290 TraceCheckUtils]: 62: Hoare triple {115400#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:34,456 INFO L290 TraceCheckUtils]: 63: Hoare triple {115400#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:34,457 INFO L290 TraceCheckUtils]: 64: Hoare triple {115400#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,457 INFO L290 TraceCheckUtils]: 65: Hoare triple {115410#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,457 INFO L272 TraceCheckUtils]: 66: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,458 INFO L290 TraceCheckUtils]: 67: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,458 INFO L290 TraceCheckUtils]: 68: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,458 INFO L290 TraceCheckUtils]: 69: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,459 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #98#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,459 INFO L272 TraceCheckUtils]: 71: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,459 INFO L290 TraceCheckUtils]: 72: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,459 INFO L290 TraceCheckUtils]: 73: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,460 INFO L290 TraceCheckUtils]: 74: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,460 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #100#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,461 INFO L272 TraceCheckUtils]: 76: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,461 INFO L290 TraceCheckUtils]: 77: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,461 INFO L290 TraceCheckUtils]: 78: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,461 INFO L290 TraceCheckUtils]: 79: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,462 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #102#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,462 INFO L272 TraceCheckUtils]: 81: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,462 INFO L290 TraceCheckUtils]: 82: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,463 INFO L290 TraceCheckUtils]: 83: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,463 INFO L290 TraceCheckUtils]: 84: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,463 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #104#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,464 INFO L290 TraceCheckUtils]: 86: Hoare triple {115410#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,464 INFO L290 TraceCheckUtils]: 87: Hoare triple {115410#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:34,465 INFO L290 TraceCheckUtils]: 88: Hoare triple {115410#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 12:34:34,465 INFO L290 TraceCheckUtils]: 89: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 12:34:34,465 INFO L290 TraceCheckUtils]: 90: Hoare triple {115483#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {115483#(<= ~counter~0 10)} is VALID [2022-04-28 12:34:34,465 INFO L290 TraceCheckUtils]: 91: Hoare triple {115483#(<= ~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; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 12:34:34,466 INFO L290 TraceCheckUtils]: 92: Hoare triple {115483#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115496#(<= |main_#t~post6| 10)} is VALID [2022-04-28 12:34:34,466 INFO L290 TraceCheckUtils]: 93: Hoare triple {115496#(<= |main_#t~post6| 10)} assume !(#t~post6 < 50);havoc #t~post6; {115205#false} is VALID [2022-04-28 12:34:34,466 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#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)); {115205#false} is VALID [2022-04-28 12:34:34,466 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 12:34:34,466 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 12:34:34,466 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 12:34:34,467 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 120 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:34:34,467 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:34:35,059 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 12:34:35,059 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 12:34:35,059 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 12:34:35,059 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#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)); {115205#false} is VALID [2022-04-28 12:34:35,059 INFO L290 TraceCheckUtils]: 93: Hoare triple {115524#(< |main_#t~post6| 50)} assume !(#t~post6 < 50);havoc #t~post6; {115205#false} is VALID [2022-04-28 12:34:35,060 INFO L290 TraceCheckUtils]: 92: Hoare triple {115528#(< ~counter~0 50)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115524#(< |main_#t~post6| 50)} is VALID [2022-04-28 12:34:35,060 INFO L290 TraceCheckUtils]: 91: Hoare triple {115528#(< ~counter~0 50)} ~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; {115528#(< ~counter~0 50)} is VALID [2022-04-28 12:34:35,060 INFO L290 TraceCheckUtils]: 90: Hoare triple {115528#(< ~counter~0 50)} assume !(~c~0 >= ~b~0); {115528#(< ~counter~0 50)} is VALID [2022-04-28 12:34:35,060 INFO L290 TraceCheckUtils]: 89: Hoare triple {115528#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {115528#(< ~counter~0 50)} is VALID [2022-04-28 12:34:35,062 INFO L290 TraceCheckUtils]: 88: Hoare triple {115541#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115528#(< ~counter~0 50)} is VALID [2022-04-28 12:34:35,063 INFO L290 TraceCheckUtils]: 87: Hoare triple {115541#(< ~counter~0 49)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,063 INFO L290 TraceCheckUtils]: 86: Hoare triple {115541#(< ~counter~0 49)} assume !(~c~0 >= 2 * ~v~0); {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,063 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #104#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,063 INFO L290 TraceCheckUtils]: 84: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,063 INFO L290 TraceCheckUtils]: 83: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,064 INFO L290 TraceCheckUtils]: 82: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,064 INFO L272 TraceCheckUtils]: 81: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,064 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #102#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,064 INFO L290 TraceCheckUtils]: 79: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,064 INFO L290 TraceCheckUtils]: 78: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,064 INFO L290 TraceCheckUtils]: 77: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,064 INFO L272 TraceCheckUtils]: 76: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,065 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #100#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,065 INFO L290 TraceCheckUtils]: 74: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,065 INFO L290 TraceCheckUtils]: 73: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,065 INFO L290 TraceCheckUtils]: 72: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,065 INFO L272 TraceCheckUtils]: 71: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,066 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115204#true} {115541#(< ~counter~0 49)} #98#return; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,066 INFO L290 TraceCheckUtils]: 69: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,066 INFO L290 TraceCheckUtils]: 68: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,066 INFO L290 TraceCheckUtils]: 67: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,066 INFO L272 TraceCheckUtils]: 66: Hoare triple {115541#(< ~counter~0 49)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,066 INFO L290 TraceCheckUtils]: 65: Hoare triple {115541#(< ~counter~0 49)} assume !!(#t~post8 < 50);havoc #t~post8; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,067 INFO L290 TraceCheckUtils]: 64: Hoare triple {115614#(< ~counter~0 48)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115541#(< ~counter~0 49)} is VALID [2022-04-28 12:34:35,067 INFO L290 TraceCheckUtils]: 63: Hoare triple {115614#(< ~counter~0 48)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115614#(< ~counter~0 48)} is VALID [2022-04-28 12:34:35,068 INFO L290 TraceCheckUtils]: 62: Hoare triple {115614#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {115614#(< ~counter~0 48)} is VALID [2022-04-28 12:34:35,068 INFO L290 TraceCheckUtils]: 61: Hoare triple {115624#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115614#(< ~counter~0 48)} is VALID [2022-04-28 12:34:35,069 INFO L290 TraceCheckUtils]: 60: Hoare triple {115624#(< ~counter~0 47)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115624#(< ~counter~0 47)} is VALID [2022-04-28 12:34:35,069 INFO L290 TraceCheckUtils]: 59: Hoare triple {115624#(< ~counter~0 47)} assume !!(#t~post6 < 50);havoc #t~post6; {115624#(< ~counter~0 47)} is VALID [2022-04-28 12:34:35,070 INFO L290 TraceCheckUtils]: 58: Hoare triple {115634#(< ~counter~0 46)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115624#(< ~counter~0 47)} is VALID [2022-04-28 12:34:35,070 INFO L290 TraceCheckUtils]: 57: Hoare triple {115634#(< ~counter~0 46)} ~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; {115634#(< ~counter~0 46)} is VALID [2022-04-28 12:34:35,070 INFO L290 TraceCheckUtils]: 56: Hoare triple {115634#(< ~counter~0 46)} assume !(~c~0 >= ~b~0); {115634#(< ~counter~0 46)} is VALID [2022-04-28 12:34:35,071 INFO L290 TraceCheckUtils]: 55: Hoare triple {115634#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {115634#(< ~counter~0 46)} is VALID [2022-04-28 12:34:35,071 INFO L290 TraceCheckUtils]: 54: Hoare triple {115647#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115634#(< ~counter~0 46)} is VALID [2022-04-28 12:34:35,072 INFO L290 TraceCheckUtils]: 53: Hoare triple {115647#(< ~counter~0 45)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,072 INFO L290 TraceCheckUtils]: 52: Hoare triple {115647#(< ~counter~0 45)} assume !(~c~0 >= 2 * ~v~0); {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,072 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #104#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,072 INFO L290 TraceCheckUtils]: 50: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L290 TraceCheckUtils]: 49: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L290 TraceCheckUtils]: 48: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L272 TraceCheckUtils]: 47: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #102#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,073 INFO L290 TraceCheckUtils]: 45: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L290 TraceCheckUtils]: 44: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L290 TraceCheckUtils]: 43: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,073 INFO L272 TraceCheckUtils]: 42: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,074 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #100#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,074 INFO L290 TraceCheckUtils]: 40: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,074 INFO L290 TraceCheckUtils]: 39: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,074 INFO L290 TraceCheckUtils]: 38: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,074 INFO L272 TraceCheckUtils]: 37: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,075 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115204#true} {115647#(< ~counter~0 45)} #98#return; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,075 INFO L290 TraceCheckUtils]: 35: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,075 INFO L290 TraceCheckUtils]: 34: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,075 INFO L290 TraceCheckUtils]: 33: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,075 INFO L272 TraceCheckUtils]: 32: Hoare triple {115647#(< ~counter~0 45)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,075 INFO L290 TraceCheckUtils]: 31: Hoare triple {115647#(< ~counter~0 45)} assume !!(#t~post8 < 50);havoc #t~post8; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,076 INFO L290 TraceCheckUtils]: 30: Hoare triple {115720#(< ~counter~0 44)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115647#(< ~counter~0 45)} is VALID [2022-04-28 12:34:35,076 INFO L290 TraceCheckUtils]: 29: Hoare triple {115720#(< ~counter~0 44)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115720#(< ~counter~0 44)} is VALID [2022-04-28 12:34:35,077 INFO L290 TraceCheckUtils]: 28: Hoare triple {115720#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {115720#(< ~counter~0 44)} is VALID [2022-04-28 12:34:35,078 INFO L290 TraceCheckUtils]: 27: Hoare triple {115730#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115720#(< ~counter~0 44)} is VALID [2022-04-28 12:34:35,078 INFO L290 TraceCheckUtils]: 26: Hoare triple {115730#(< ~counter~0 43)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115730#(< ~counter~0 43)} is VALID [2022-04-28 12:34:35,078 INFO L290 TraceCheckUtils]: 25: Hoare triple {115730#(< ~counter~0 43)} assume !!(#t~post6 < 50);havoc #t~post6; {115730#(< ~counter~0 43)} is VALID [2022-04-28 12:34:35,079 INFO L290 TraceCheckUtils]: 24: Hoare triple {115740#(< ~counter~0 42)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115730#(< ~counter~0 43)} is VALID [2022-04-28 12:34:35,079 INFO L290 TraceCheckUtils]: 23: Hoare triple {115740#(< ~counter~0 42)} ~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; {115740#(< ~counter~0 42)} is VALID [2022-04-28 12:34:35,080 INFO L290 TraceCheckUtils]: 22: Hoare triple {115740#(< ~counter~0 42)} assume !(~c~0 >= ~b~0); {115740#(< ~counter~0 42)} is VALID [2022-04-28 12:34:35,080 INFO L290 TraceCheckUtils]: 21: Hoare triple {115740#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {115740#(< ~counter~0 42)} is VALID [2022-04-28 12:34:35,081 INFO L290 TraceCheckUtils]: 20: Hoare triple {115753#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115740#(< ~counter~0 42)} is VALID [2022-04-28 12:34:35,081 INFO L290 TraceCheckUtils]: 19: Hoare triple {115753#(< ~counter~0 41)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115753#(< ~counter~0 41)} is VALID [2022-04-28 12:34:35,081 INFO L290 TraceCheckUtils]: 18: Hoare triple {115753#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {115753#(< ~counter~0 41)} is VALID [2022-04-28 12:34:35,082 INFO L290 TraceCheckUtils]: 17: Hoare triple {115763#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115753#(< ~counter~0 41)} is VALID [2022-04-28 12:34:35,082 INFO L290 TraceCheckUtils]: 16: Hoare triple {115763#(< ~counter~0 40)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,083 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115204#true} {115763#(< ~counter~0 40)} #96#return; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,083 INFO L290 TraceCheckUtils]: 14: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,083 INFO L290 TraceCheckUtils]: 13: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,083 INFO L290 TraceCheckUtils]: 12: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,083 INFO L272 TraceCheckUtils]: 11: Hoare triple {115763#(< ~counter~0 40)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,083 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115204#true} {115763#(< ~counter~0 40)} #94#return; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 12:34:35,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 12:34:35,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 12:34:35,084 INFO L272 TraceCheckUtils]: 6: Hoare triple {115763#(< ~counter~0 40)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 12:34:35,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {115763#(< ~counter~0 40)} 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; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {115763#(< ~counter~0 40)} call #t~ret9 := main(); {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,084 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115763#(< ~counter~0 40)} {115204#true} #108#return; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {115763#(< ~counter~0 40)} assume true; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#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; {115763#(< ~counter~0 40)} is VALID [2022-04-28 12:34:35,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 12:34:35,085 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 56 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:34:35,086 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:34:35,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [463253121] [2022-04-28 12:34:35,086 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:34:35,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1071585978] [2022-04-28 12:34:35,086 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1071585978] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:34:35,086 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:34:35,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 12:34:35,086 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:34:35,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [94296321] [2022-04-28 12:34:35,086 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [94296321] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:34:35,086 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:34:35,086 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 12:34:35,086 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [120101523] [2022-04-28 12:34:35,087 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:34:35,087 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 12:34:35,087 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:34:35,087 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:35,155 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:35,156 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 12:34:35,156 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:35,156 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 12:34:35,156 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 12:34:35,156 INFO L87 Difference]: Start difference. First operand 1164 states and 1539 transitions. Second operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:39,558 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:39,558 INFO L93 Difference]: Finished difference Result 1434 states and 1877 transitions. [2022-04-28 12:34:39,558 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 12:34:39,558 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 12:34:39,559 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:34:39,559 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:39,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 12:34:39,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:39,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 12:34:39,562 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 266 transitions. [2022-04-28 12:34:39,726 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 266 edges. 266 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:39,805 INFO L225 Difference]: With dead ends: 1434 [2022-04-28 12:34:39,805 INFO L226 Difference]: Without dead ends: 1427 [2022-04-28 12:34:39,806 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 203 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=468, Invalid=654, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 12:34:39,806 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 243 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 156 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 333 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 156 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:34:39,806 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [243 Valid, 333 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [156 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 12:34:39,807 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1427 states. [2022-04-28 12:34:41,961 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1427 to 1358. [2022-04-28 12:34:41,961 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:34:41,963 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 12:34:41,964 INFO L74 IsIncluded]: Start isIncluded. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 12:34:41,964 INFO L87 Difference]: Start difference. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 12:34:42,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:42,021 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 12:34:42,021 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 12:34:42,023 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:42,023 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:42,024 INFO L74 IsIncluded]: Start isIncluded. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 12:34:42,025 INFO L87 Difference]: Start difference. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 12:34:42,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:42,082 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 12:34:42,083 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 12:34:42,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:42,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:42,084 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:34:42,084 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:34:42,086 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 12:34:42,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1358 states to 1358 states and 1786 transitions. [2022-04-28 12:34:42,179 INFO L78 Accepts]: Start accepts. Automaton has 1358 states and 1786 transitions. Word has length 98 [2022-04-28 12:34:42,179 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:34:42,179 INFO L495 AbstractCegarLoop]: Abstraction has 1358 states and 1786 transitions. [2022-04-28 12:34:42,179 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:42,179 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1358 states and 1786 transitions. [2022-04-28 12:34:46,091 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1786 edges. 1786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:46,091 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1786 transitions. [2022-04-28 12:34:46,092 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 12:34:46,092 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:34:46,092 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:34:46,108 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-28 12:34:46,292 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-28 12:34:46,292 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:34:46,293 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:34:46,293 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 1 times [2022-04-28 12:34:46,293 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:46,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2085841167] [2022-04-28 12:34:46,293 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:34:46,293 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 2 times [2022-04-28 12:34:46,293 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:34:46,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1176774068] [2022-04-28 12:34:46,294 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:34:46,294 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:34:46,304 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:34:46,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1230357953] [2022-04-28 12:34:46,304 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:34:46,304 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:34:46,304 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:34:46,305 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:34:46,306 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-28 12:34:46,388 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:34:46,388 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:34:46,390 INFO L263 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 12:34:46,406 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:34:46,408 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:34:46,757 INFO L272 TraceCheckUtils]: 0: Hoare triple {124271#true} call ULTIMATE.init(); {124271#true} is VALID [2022-04-28 12:34:46,758 INFO L290 TraceCheckUtils]: 1: Hoare triple {124271#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; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,758 INFO L290 TraceCheckUtils]: 2: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,758 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124279#(<= ~counter~0 0)} {124271#true} #108#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,758 INFO L272 TraceCheckUtils]: 4: Hoare triple {124279#(<= ~counter~0 0)} call #t~ret9 := main(); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,759 INFO L290 TraceCheckUtils]: 5: Hoare triple {124279#(<= ~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; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,759 INFO L272 TraceCheckUtils]: 6: Hoare triple {124279#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,759 INFO L290 TraceCheckUtils]: 7: Hoare triple {124279#(<= ~counter~0 0)} ~cond := #in~cond; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,759 INFO L290 TraceCheckUtils]: 8: Hoare triple {124279#(<= ~counter~0 0)} assume !(0 == ~cond); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,760 INFO L290 TraceCheckUtils]: 9: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,760 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124279#(<= ~counter~0 0)} {124279#(<= ~counter~0 0)} #94#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,760 INFO L272 TraceCheckUtils]: 11: Hoare triple {124279#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,760 INFO L290 TraceCheckUtils]: 12: Hoare triple {124279#(<= ~counter~0 0)} ~cond := #in~cond; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {124279#(<= ~counter~0 0)} assume !(0 == ~cond); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,761 INFO L290 TraceCheckUtils]: 14: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,761 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124279#(<= ~counter~0 0)} {124279#(<= ~counter~0 0)} #96#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,761 INFO L290 TraceCheckUtils]: 16: Hoare triple {124279#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 12:34:46,763 INFO L290 TraceCheckUtils]: 17: Hoare triple {124279#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:46,763 INFO L290 TraceCheckUtils]: 18: Hoare triple {124328#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:46,764 INFO L290 TraceCheckUtils]: 19: Hoare triple {124328#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 12:34:46,764 INFO L290 TraceCheckUtils]: 20: Hoare triple {124328#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:46,765 INFO L290 TraceCheckUtils]: 21: Hoare triple {124338#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:46,765 INFO L290 TraceCheckUtils]: 22: Hoare triple {124338#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {124338#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:46,765 INFO L290 TraceCheckUtils]: 23: Hoare triple {124338#(<= ~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; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 12:34:46,766 INFO L290 TraceCheckUtils]: 24: Hoare triple {124338#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:46,766 INFO L290 TraceCheckUtils]: 25: Hoare triple {124351#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:46,766 INFO L290 TraceCheckUtils]: 26: Hoare triple {124351#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 12:34:46,767 INFO L290 TraceCheckUtils]: 27: Hoare triple {124351#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:46,767 INFO L290 TraceCheckUtils]: 28: Hoare triple {124361#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:46,767 INFO L290 TraceCheckUtils]: 29: Hoare triple {124361#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 12:34:46,768 INFO L290 TraceCheckUtils]: 30: Hoare triple {124361#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,768 INFO L290 TraceCheckUtils]: 31: Hoare triple {124371#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,769 INFO L272 TraceCheckUtils]: 32: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,769 INFO L290 TraceCheckUtils]: 33: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,769 INFO L290 TraceCheckUtils]: 34: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,770 INFO L290 TraceCheckUtils]: 35: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,770 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #98#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,770 INFO L272 TraceCheckUtils]: 37: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,771 INFO L290 TraceCheckUtils]: 38: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,771 INFO L290 TraceCheckUtils]: 39: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,771 INFO L290 TraceCheckUtils]: 40: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,771 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #100#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,772 INFO L272 TraceCheckUtils]: 42: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,772 INFO L290 TraceCheckUtils]: 43: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,772 INFO L290 TraceCheckUtils]: 44: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,772 INFO L290 TraceCheckUtils]: 45: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,773 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #102#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,773 INFO L272 TraceCheckUtils]: 47: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,773 INFO L290 TraceCheckUtils]: 48: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,774 INFO L290 TraceCheckUtils]: 49: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,774 INFO L290 TraceCheckUtils]: 50: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,775 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #104#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,775 INFO L290 TraceCheckUtils]: 52: Hoare triple {124371#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,776 INFO L290 TraceCheckUtils]: 53: Hoare triple {124371#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 12:34:46,777 INFO L290 TraceCheckUtils]: 54: Hoare triple {124371#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:46,777 INFO L290 TraceCheckUtils]: 55: Hoare triple {124444#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:46,777 INFO L290 TraceCheckUtils]: 56: Hoare triple {124444#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {124444#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:46,777 INFO L290 TraceCheckUtils]: 57: Hoare triple {124444#(<= ~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; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 12:34:46,778 INFO L290 TraceCheckUtils]: 58: Hoare triple {124444#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:46,779 INFO L290 TraceCheckUtils]: 59: Hoare triple {124457#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:46,779 INFO L290 TraceCheckUtils]: 60: Hoare triple {124457#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 12:34:46,780 INFO L290 TraceCheckUtils]: 61: Hoare triple {124457#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:46,780 INFO L290 TraceCheckUtils]: 62: Hoare triple {124467#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:46,780 INFO L290 TraceCheckUtils]: 63: Hoare triple {124467#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 12:34:46,781 INFO L290 TraceCheckUtils]: 64: Hoare triple {124467#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,782 INFO L290 TraceCheckUtils]: 65: Hoare triple {124477#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,782 INFO L272 TraceCheckUtils]: 66: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,782 INFO L290 TraceCheckUtils]: 67: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,783 INFO L290 TraceCheckUtils]: 68: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,783 INFO L290 TraceCheckUtils]: 69: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,783 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #98#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,784 INFO L272 TraceCheckUtils]: 71: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,784 INFO L290 TraceCheckUtils]: 72: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,785 INFO L290 TraceCheckUtils]: 73: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,785 INFO L290 TraceCheckUtils]: 74: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,785 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #100#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,786 INFO L272 TraceCheckUtils]: 76: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,786 INFO L290 TraceCheckUtils]: 77: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,787 INFO L290 TraceCheckUtils]: 78: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,787 INFO L290 TraceCheckUtils]: 79: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,788 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #102#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,788 INFO L272 TraceCheckUtils]: 81: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,788 INFO L290 TraceCheckUtils]: 82: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,789 INFO L290 TraceCheckUtils]: 83: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,789 INFO L290 TraceCheckUtils]: 84: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,790 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #104#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,790 INFO L290 TraceCheckUtils]: 86: Hoare triple {124477#(<= ~counter~0 9)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 12:34:46,790 INFO L290 TraceCheckUtils]: 87: Hoare triple {124477#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124547#(<= |main_#t~post8| 9)} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 88: Hoare triple {124547#(<= |main_#t~post8| 9)} assume !(#t~post8 < 50);havoc #t~post8; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 89: Hoare triple {124272#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 90: Hoare triple {124272#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 91: Hoare triple {124272#false} assume !(#t~post7 < 50);havoc #t~post7; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 92: Hoare triple {124272#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; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 93: Hoare triple {124272#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 94: Hoare triple {124272#false} assume !(#t~post6 < 50);havoc #t~post6; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L272 TraceCheckUtils]: 95: Hoare triple {124272#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)); {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 96: Hoare triple {124272#false} ~cond := #in~cond; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 97: Hoare triple {124272#false} assume 0 == ~cond; {124272#false} is VALID [2022-04-28 12:34:46,791 INFO L290 TraceCheckUtils]: 98: Hoare triple {124272#false} assume !false; {124272#false} is VALID [2022-04-28 12:34:46,792 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 103 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:34:46,792 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:34:47,307 INFO L290 TraceCheckUtils]: 98: Hoare triple {124272#false} assume !false; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 97: Hoare triple {124272#false} assume 0 == ~cond; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 96: Hoare triple {124272#false} ~cond := #in~cond; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L272 TraceCheckUtils]: 95: Hoare triple {124272#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)); {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 94: Hoare triple {124272#false} assume !(#t~post6 < 50);havoc #t~post6; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 93: Hoare triple {124272#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 92: Hoare triple {124272#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; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 91: Hoare triple {124272#false} assume !(#t~post7 < 50);havoc #t~post7; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 90: Hoare triple {124272#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 89: Hoare triple {124272#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124272#false} is VALID [2022-04-28 12:34:47,308 INFO L290 TraceCheckUtils]: 88: Hoare triple {124611#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {124272#false} is VALID [2022-04-28 12:34:47,309 INFO L290 TraceCheckUtils]: 87: Hoare triple {124615#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124611#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:34:47,309 INFO L290 TraceCheckUtils]: 86: Hoare triple {124615#(< ~counter~0 50)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,310 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #104#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,310 INFO L290 TraceCheckUtils]: 84: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,310 INFO L290 TraceCheckUtils]: 83: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,310 INFO L290 TraceCheckUtils]: 82: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,310 INFO L272 TraceCheckUtils]: 81: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,310 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #102#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,310 INFO L290 TraceCheckUtils]: 79: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,310 INFO L290 TraceCheckUtils]: 78: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,311 INFO L290 TraceCheckUtils]: 77: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,311 INFO L272 TraceCheckUtils]: 76: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,311 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #100#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,311 INFO L290 TraceCheckUtils]: 74: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,311 INFO L290 TraceCheckUtils]: 73: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,311 INFO L290 TraceCheckUtils]: 72: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,311 INFO L272 TraceCheckUtils]: 71: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,312 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124271#true} {124615#(< ~counter~0 50)} #98#return; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,312 INFO L290 TraceCheckUtils]: 69: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,312 INFO L290 TraceCheckUtils]: 68: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,312 INFO L290 TraceCheckUtils]: 67: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,312 INFO L272 TraceCheckUtils]: 66: Hoare triple {124615#(< ~counter~0 50)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,312 INFO L290 TraceCheckUtils]: 65: Hoare triple {124615#(< ~counter~0 50)} assume !!(#t~post8 < 50);havoc #t~post8; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,314 INFO L290 TraceCheckUtils]: 64: Hoare triple {124685#(< ~counter~0 49)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124615#(< ~counter~0 50)} is VALID [2022-04-28 12:34:47,314 INFO L290 TraceCheckUtils]: 63: Hoare triple {124685#(< ~counter~0 49)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124685#(< ~counter~0 49)} is VALID [2022-04-28 12:34:47,315 INFO L290 TraceCheckUtils]: 62: Hoare triple {124685#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {124685#(< ~counter~0 49)} is VALID [2022-04-28 12:34:47,316 INFO L290 TraceCheckUtils]: 61: Hoare triple {124695#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124685#(< ~counter~0 49)} is VALID [2022-04-28 12:34:47,316 INFO L290 TraceCheckUtils]: 60: Hoare triple {124695#(< ~counter~0 48)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124695#(< ~counter~0 48)} is VALID [2022-04-28 12:34:47,316 INFO L290 TraceCheckUtils]: 59: Hoare triple {124695#(< ~counter~0 48)} assume !!(#t~post6 < 50);havoc #t~post6; {124695#(< ~counter~0 48)} is VALID [2022-04-28 12:34:47,317 INFO L290 TraceCheckUtils]: 58: Hoare triple {124705#(< ~counter~0 47)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124695#(< ~counter~0 48)} is VALID [2022-04-28 12:34:47,317 INFO L290 TraceCheckUtils]: 57: Hoare triple {124705#(< ~counter~0 47)} ~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; {124705#(< ~counter~0 47)} is VALID [2022-04-28 12:34:47,317 INFO L290 TraceCheckUtils]: 56: Hoare triple {124705#(< ~counter~0 47)} assume !(~c~0 >= ~b~0); {124705#(< ~counter~0 47)} is VALID [2022-04-28 12:34:47,318 INFO L290 TraceCheckUtils]: 55: Hoare triple {124705#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {124705#(< ~counter~0 47)} is VALID [2022-04-28 12:34:47,318 INFO L290 TraceCheckUtils]: 54: Hoare triple {124718#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124705#(< ~counter~0 47)} is VALID [2022-04-28 12:34:47,319 INFO L290 TraceCheckUtils]: 53: Hoare triple {124718#(< ~counter~0 46)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,319 INFO L290 TraceCheckUtils]: 52: Hoare triple {124718#(< ~counter~0 46)} assume !(~c~0 >= 2 * ~v~0); {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,319 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #104#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,320 INFO L290 TraceCheckUtils]: 50: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,320 INFO L290 TraceCheckUtils]: 49: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,320 INFO L290 TraceCheckUtils]: 48: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,320 INFO L272 TraceCheckUtils]: 47: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,320 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #102#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,320 INFO L290 TraceCheckUtils]: 45: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,320 INFO L290 TraceCheckUtils]: 44: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,320 INFO L290 TraceCheckUtils]: 43: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,321 INFO L272 TraceCheckUtils]: 42: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,321 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #100#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,321 INFO L290 TraceCheckUtils]: 40: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,321 INFO L290 TraceCheckUtils]: 39: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,321 INFO L290 TraceCheckUtils]: 38: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,321 INFO L272 TraceCheckUtils]: 37: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,322 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124271#true} {124718#(< ~counter~0 46)} #98#return; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,322 INFO L290 TraceCheckUtils]: 35: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,322 INFO L290 TraceCheckUtils]: 34: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,322 INFO L290 TraceCheckUtils]: 33: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,322 INFO L272 TraceCheckUtils]: 32: Hoare triple {124718#(< ~counter~0 46)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,322 INFO L290 TraceCheckUtils]: 31: Hoare triple {124718#(< ~counter~0 46)} assume !!(#t~post8 < 50);havoc #t~post8; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,323 INFO L290 TraceCheckUtils]: 30: Hoare triple {124791#(< ~counter~0 45)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124718#(< ~counter~0 46)} is VALID [2022-04-28 12:34:47,323 INFO L290 TraceCheckUtils]: 29: Hoare triple {124791#(< ~counter~0 45)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124791#(< ~counter~0 45)} is VALID [2022-04-28 12:34:47,324 INFO L290 TraceCheckUtils]: 28: Hoare triple {124791#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {124791#(< ~counter~0 45)} is VALID [2022-04-28 12:34:47,325 INFO L290 TraceCheckUtils]: 27: Hoare triple {124801#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124791#(< ~counter~0 45)} is VALID [2022-04-28 12:34:47,325 INFO L290 TraceCheckUtils]: 26: Hoare triple {124801#(< ~counter~0 44)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124801#(< ~counter~0 44)} is VALID [2022-04-28 12:34:47,325 INFO L290 TraceCheckUtils]: 25: Hoare triple {124801#(< ~counter~0 44)} assume !!(#t~post6 < 50);havoc #t~post6; {124801#(< ~counter~0 44)} is VALID [2022-04-28 12:34:47,326 INFO L290 TraceCheckUtils]: 24: Hoare triple {124811#(< ~counter~0 43)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124801#(< ~counter~0 44)} is VALID [2022-04-28 12:34:47,326 INFO L290 TraceCheckUtils]: 23: Hoare triple {124811#(< ~counter~0 43)} ~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; {124811#(< ~counter~0 43)} is VALID [2022-04-28 12:34:47,326 INFO L290 TraceCheckUtils]: 22: Hoare triple {124811#(< ~counter~0 43)} assume !(~c~0 >= ~b~0); {124811#(< ~counter~0 43)} is VALID [2022-04-28 12:34:47,327 INFO L290 TraceCheckUtils]: 21: Hoare triple {124811#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {124811#(< ~counter~0 43)} is VALID [2022-04-28 12:34:47,328 INFO L290 TraceCheckUtils]: 20: Hoare triple {124824#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124811#(< ~counter~0 43)} is VALID [2022-04-28 12:34:47,328 INFO L290 TraceCheckUtils]: 19: Hoare triple {124824#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124824#(< ~counter~0 42)} is VALID [2022-04-28 12:34:47,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {124824#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {124824#(< ~counter~0 42)} is VALID [2022-04-28 12:34:47,329 INFO L290 TraceCheckUtils]: 17: Hoare triple {124834#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124824#(< ~counter~0 42)} is VALID [2022-04-28 12:34:47,329 INFO L290 TraceCheckUtils]: 16: Hoare triple {124834#(< ~counter~0 41)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,330 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124271#true} {124834#(< ~counter~0 41)} #96#return; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,330 INFO L290 TraceCheckUtils]: 14: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,330 INFO L290 TraceCheckUtils]: 13: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,330 INFO L290 TraceCheckUtils]: 12: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,330 INFO L272 TraceCheckUtils]: 11: Hoare triple {124834#(< ~counter~0 41)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,330 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124271#true} {124834#(< ~counter~0 41)} #94#return; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,330 INFO L290 TraceCheckUtils]: 9: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 12:34:47,330 INFO L290 TraceCheckUtils]: 8: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 12:34:47,330 INFO L290 TraceCheckUtils]: 7: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 12:34:47,331 INFO L272 TraceCheckUtils]: 6: Hoare triple {124834#(< ~counter~0 41)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124271#true} is VALID [2022-04-28 12:34:47,331 INFO L290 TraceCheckUtils]: 5: Hoare triple {124834#(< ~counter~0 41)} 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; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,331 INFO L272 TraceCheckUtils]: 4: Hoare triple {124834#(< ~counter~0 41)} call #t~ret9 := main(); {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,331 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124834#(< ~counter~0 41)} {124271#true} #108#return; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,332 INFO L290 TraceCheckUtils]: 2: Hoare triple {124834#(< ~counter~0 41)} assume true; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,332 INFO L290 TraceCheckUtils]: 1: Hoare triple {124271#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; {124834#(< ~counter~0 41)} is VALID [2022-04-28 12:34:47,332 INFO L272 TraceCheckUtils]: 0: Hoare triple {124271#true} call ULTIMATE.init(); {124271#true} is VALID [2022-04-28 12:34:47,332 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 39 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:34:47,333 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:34:47,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1176774068] [2022-04-28 12:34:47,333 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:34:47,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1230357953] [2022-04-28 12:34:47,333 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1230357953] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:34:47,333 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:34:47,333 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 12:34:47,333 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:34:47,333 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2085841167] [2022-04-28 12:34:47,333 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2085841167] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:34:47,333 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:34:47,333 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 12:34:47,333 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1074348620] [2022-04-28 12:34:47,334 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:34:47,334 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 12:34:47,334 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:34:47,334 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:47,401 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:47,401 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 12:34:47,401 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:34:47,401 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 12:34:47,401 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 12:34:47,401 INFO L87 Difference]: Start difference. First operand 1358 states and 1786 transitions. Second operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:51,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:51,873 INFO L93 Difference]: Finished difference Result 1838 states and 2503 transitions. [2022-04-28 12:34:51,873 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 12:34:51,874 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 12:34:51,874 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:34:51,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:51,875 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 12:34:51,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:51,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 12:34:51,877 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 12:34:52,118 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:34:52,190 INFO L225 Difference]: With dead ends: 1838 [2022-04-28 12:34:52,190 INFO L226 Difference]: Without dead ends: 1358 [2022-04-28 12:34:52,192 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 204 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-28 12:34:52,192 INFO L413 NwaCegarLoop]: 72 mSDtfsCounter, 227 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 111 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 227 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 259 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 111 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:34:52,192 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [227 Valid, 296 Invalid, 259 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [111 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 12:34:52,193 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1358 states. [2022-04-28 12:34:56,205 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1358 to 1334. [2022-04-28 12:34:56,206 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:34:56,207 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 12:34:56,208 INFO L74 IsIncluded]: Start isIncluded. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 12:34:56,208 INFO L87 Difference]: Start difference. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 12:34:56,261 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:56,261 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 12:34:56,262 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 12:34:56,263 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:56,263 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:56,264 INFO L74 IsIncluded]: Start isIncluded. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 12:34:56,265 INFO L87 Difference]: Start difference. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 12:34:56,317 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:34:56,317 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 12:34:56,317 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 12:34:56,319 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:34:56,319 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:34:56,319 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:34:56,319 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:34:56,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 12:34:56,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1334 states to 1334 states and 1736 transitions. [2022-04-28 12:34:56,400 INFO L78 Accepts]: Start accepts. Automaton has 1334 states and 1736 transitions. Word has length 99 [2022-04-28 12:34:56,400 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:34:56,400 INFO L495 AbstractCegarLoop]: Abstraction has 1334 states and 1736 transitions. [2022-04-28 12:34:56,400 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:34:56,400 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1334 states and 1736 transitions. [2022-04-28 12:35:00,035 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1736 edges. 1736 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:35:00,035 INFO L276 IsEmpty]: Start isEmpty. Operand 1334 states and 1736 transitions. [2022-04-28 12:35:00,036 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 12:35:00,036 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:35:00,036 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:35:00,055 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-28 12:35:00,237 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-28 12:35:00,237 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:35:00,237 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:35:00,237 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 5 times [2022-04-28 12:35:00,237 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:35:00,237 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1091766956] [2022-04-28 12:35:00,238 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:35:00,238 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 6 times [2022-04-28 12:35:00,238 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:35:00,238 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1457908423] [2022-04-28 12:35:00,238 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:35:00,238 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:35:00,247 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:35:00,247 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1734532829] [2022-04-28 12:35:00,247 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:35:00,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:35:00,247 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:35:00,248 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:35:00,250 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-28 12:35:00,346 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 12:35:00,347 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:35:00,348 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 12:35:00,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:35:00,372 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:35:01,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {133962#true} call ULTIMATE.init(); {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L290 TraceCheckUtils]: 1: Hoare triple {133962#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; {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L290 TraceCheckUtils]: 2: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133962#true} {133962#true} #108#return; {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L272 TraceCheckUtils]: 4: Hoare triple {133962#true} call #t~ret9 := main(); {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L290 TraceCheckUtils]: 5: Hoare triple {133962#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; {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L272 TraceCheckUtils]: 6: Hoare triple {133962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L290 TraceCheckUtils]: 7: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L290 TraceCheckUtils]: 8: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,181 INFO L290 TraceCheckUtils]: 9: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133962#true} {133962#true} #94#return; {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L272 TraceCheckUtils]: 11: Hoare triple {133962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L290 TraceCheckUtils]: 12: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L290 TraceCheckUtils]: 13: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L290 TraceCheckUtils]: 14: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {133962#true} {133962#true} #96#return; {133962#true} is VALID [2022-04-28 12:35:01,182 INFO L290 TraceCheckUtils]: 16: Hoare triple {133962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,183 INFO L290 TraceCheckUtils]: 17: Hoare triple {134015#(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; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,183 INFO L290 TraceCheckUtils]: 18: Hoare triple {134015#(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 < 50);havoc #t~post6; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,183 INFO L290 TraceCheckUtils]: 19: Hoare triple {134015#(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; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,184 INFO L290 TraceCheckUtils]: 20: Hoare triple {134025#(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; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,184 INFO L290 TraceCheckUtils]: 21: Hoare triple {134025#(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 < 50);havoc #t~post7; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,185 INFO L290 TraceCheckUtils]: 22: Hoare triple {134025#(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; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,185 INFO L290 TraceCheckUtils]: 23: Hoare triple {134025#(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~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,185 INFO L290 TraceCheckUtils]: 24: Hoare triple {134025#(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~post8 < 50);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,185 INFO L272 TraceCheckUtils]: 25: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,186 INFO L290 TraceCheckUtils]: 26: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,186 INFO L290 TraceCheckUtils]: 27: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,186 INFO L290 TraceCheckUtils]: 28: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,186 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {133962#true} {134025#(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))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,186 INFO L272 TraceCheckUtils]: 30: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,187 INFO L290 TraceCheckUtils]: 31: Hoare triple {133962#true} ~cond := #in~cond; {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:35:01,187 INFO L290 TraceCheckUtils]: 32: Hoare triple {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:01,187 INFO L290 TraceCheckUtils]: 33: Hoare triple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:01,188 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} {134025#(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))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,188 INFO L272 TraceCheckUtils]: 35: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,188 INFO L290 TraceCheckUtils]: 36: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,188 INFO L290 TraceCheckUtils]: 37: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,188 INFO L290 TraceCheckUtils]: 38: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,189 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {133962#true} {134025#(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))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,189 INFO L272 TraceCheckUtils]: 40: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,189 INFO L290 TraceCheckUtils]: 41: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,189 INFO L290 TraceCheckUtils]: 42: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,189 INFO L290 TraceCheckUtils]: 43: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,190 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {133962#true} {134025#(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))} #104#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,190 INFO L290 TraceCheckUtils]: 45: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,191 INFO L290 TraceCheckUtils]: 46: Hoare triple {134025#(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~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,191 INFO L290 TraceCheckUtils]: 47: Hoare triple {134025#(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~post8 < 50);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,191 INFO L272 TraceCheckUtils]: 48: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,191 INFO L290 TraceCheckUtils]: 49: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,191 INFO L290 TraceCheckUtils]: 50: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,191 INFO L290 TraceCheckUtils]: 51: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,192 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {133962#true} {134025#(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))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,192 INFO L272 TraceCheckUtils]: 53: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,192 INFO L290 TraceCheckUtils]: 54: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,192 INFO L290 TraceCheckUtils]: 55: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,192 INFO L290 TraceCheckUtils]: 56: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,193 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {133962#true} {134025#(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))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,193 INFO L272 TraceCheckUtils]: 58: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,193 INFO L290 TraceCheckUtils]: 59: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,193 INFO L290 TraceCheckUtils]: 60: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,193 INFO L290 TraceCheckUtils]: 61: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,194 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {133962#true} {134025#(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))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,194 INFO L272 TraceCheckUtils]: 63: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,194 INFO L290 TraceCheckUtils]: 64: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,194 INFO L290 TraceCheckUtils]: 65: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,194 INFO L290 TraceCheckUtils]: 66: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,195 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {133962#true} {134025#(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))} #104#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,195 INFO L290 TraceCheckUtils]: 68: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,196 INFO L290 TraceCheckUtils]: 69: Hoare triple {134025#(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~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,196 INFO L290 TraceCheckUtils]: 70: Hoare triple {134025#(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~post8 < 50);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,196 INFO L272 TraceCheckUtils]: 71: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,196 INFO L290 TraceCheckUtils]: 72: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,196 INFO L290 TraceCheckUtils]: 73: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,196 INFO L290 TraceCheckUtils]: 74: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,197 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {133962#true} {134025#(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))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,197 INFO L272 TraceCheckUtils]: 76: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,197 INFO L290 TraceCheckUtils]: 77: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,197 INFO L290 TraceCheckUtils]: 78: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,197 INFO L290 TraceCheckUtils]: 79: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,198 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {133962#true} {134025#(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))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,198 INFO L272 TraceCheckUtils]: 81: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,198 INFO L290 TraceCheckUtils]: 82: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 12:35:01,198 INFO L290 TraceCheckUtils]: 83: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 12:35:01,198 INFO L290 TraceCheckUtils]: 84: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 12:35:01,199 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {133962#true} {134025#(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))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,199 INFO L272 TraceCheckUtils]: 86: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 12:35:01,199 INFO L290 TraceCheckUtils]: 87: Hoare triple {133962#true} ~cond := #in~cond; {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:35:01,199 INFO L290 TraceCheckUtils]: 88: Hoare triple {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:01,200 INFO L290 TraceCheckUtils]: 89: Hoare triple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:01,200 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} {134025#(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))} #104#return; {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,201 INFO L290 TraceCheckUtils]: 91: Hoare triple {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,205 INFO L290 TraceCheckUtils]: 92: Hoare triple {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,205 INFO L290 TraceCheckUtils]: 93: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,206 INFO L290 TraceCheckUtils]: 94: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,206 INFO L290 TraceCheckUtils]: 95: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:35:01,208 INFO L290 TraceCheckUtils]: 96: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 12:35:01,209 INFO L290 TraceCheckUtils]: 97: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 12:35:01,209 INFO L290 TraceCheckUtils]: 98: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 12:35:01,209 INFO L290 TraceCheckUtils]: 99: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !(0 != ~b~0); {134271#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 12:35:01,210 INFO L272 TraceCheckUtils]: 100: Hoare triple {134271#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {134275#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:35:01,210 INFO L290 TraceCheckUtils]: 101: Hoare triple {134275#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {134279#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:35:01,211 INFO L290 TraceCheckUtils]: 102: Hoare triple {134279#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {133963#false} is VALID [2022-04-28 12:35:01,211 INFO L290 TraceCheckUtils]: 103: Hoare triple {133963#false} assume !false; {133963#false} is VALID [2022-04-28 12:35:01,211 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 57 proven. 35 refuted. 0 times theorem prover too weak. 227 trivial. 0 not checked. [2022-04-28 12:35:01,211 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:35:13,577 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:35:13,756 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:35:13,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1457908423] [2022-04-28 12:35:13,757 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:35:13,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1734532829] [2022-04-28 12:35:13,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1734532829] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 12:35:13,757 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:35:13,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-28 12:35:13,757 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:35:13,757 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1091766956] [2022-04-28 12:35:13,757 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1091766956] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:35:13,757 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:35:13,757 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 12:35:13,757 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [492199775] [2022-04-28 12:35:13,757 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:35:13,758 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 12:35:13,758 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:35:13,758 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:35:13,820 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-28 12:35:13,820 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 12:35:13,820 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:35:13,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 12:35:13,821 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-28 12:35:13,821 INFO L87 Difference]: Start difference. First operand 1334 states and 1736 transitions. Second operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:35:18,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:35:18,660 INFO L93 Difference]: Finished difference Result 1565 states and 2045 transitions. [2022-04-28 12:35:18,660 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 12:35:18,660 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 12:35:18,660 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:35:18,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:35:18,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 12:35:18,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:35:18,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 12:35:18,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-04-28 12:35:18,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:35:18,909 INFO L225 Difference]: With dead ends: 1565 [2022-04-28 12:35:18,909 INFO L226 Difference]: Without dead ends: 1556 [2022-04-28 12:35:18,910 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-28 12:35:18,910 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 68 mSDsluCounter, 279 mSDsCounter, 0 mSdLazyCounter, 365 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 330 SdHoareTripleChecker+Invalid, 415 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 365 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 12:35:18,910 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [75 Valid, 330 Invalid, 415 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 365 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 12:35:18,911 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1556 states. [2022-04-28 12:35:21,242 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1556 to 1518. [2022-04-28 12:35:21,242 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:35:21,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 12:35:21,245 INFO L74 IsIncluded]: Start isIncluded. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 12:35:21,246 INFO L87 Difference]: Start difference. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 12:35:21,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:35:21,319 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 12:35:21,319 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 12:35:21,321 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:35:21,321 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:35:21,322 INFO L74 IsIncluded]: Start isIncluded. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 12:35:21,323 INFO L87 Difference]: Start difference. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 12:35:21,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:35:21,397 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 12:35:21,397 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 12:35:21,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:35:21,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:35:21,399 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:35:21,399 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:35:21,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 12:35:21,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1518 states to 1518 states and 1985 transitions. [2022-04-28 12:35:21,523 INFO L78 Accepts]: Start accepts. Automaton has 1518 states and 1985 transitions. Word has length 104 [2022-04-28 12:35:21,523 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:35:21,524 INFO L495 AbstractCegarLoop]: Abstraction has 1518 states and 1985 transitions. [2022-04-28 12:35:21,524 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:35:21,524 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1518 states and 1985 transitions. [2022-04-28 12:35:25,857 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1985 edges. 1985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:35:25,857 INFO L276 IsEmpty]: Start isEmpty. Operand 1518 states and 1985 transitions. [2022-04-28 12:35:25,858 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 12:35:25,858 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:35:25,858 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:35:25,874 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-28 12:35:26,058 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable36,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:35:26,059 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:35:26,059 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:35:26,059 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 5 times [2022-04-28 12:35:26,059 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:35:26,059 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [657151202] [2022-04-28 12:35:26,059 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:35:26,059 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 6 times [2022-04-28 12:35:26,060 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:35:26,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1274261955] [2022-04-28 12:35:26,060 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:35:26,060 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:35:26,070 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:35:26,070 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1659913321] [2022-04-28 12:35:26,070 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:35:26,070 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:35:26,071 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:35:26,071 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:35:26,075 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-28 12:35:26,130 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 12:35:26,130 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:35:26,131 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 12:35:26,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:35:26,155 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:35:38,936 INFO L272 TraceCheckUtils]: 0: Hoare triple {143622#true} call ULTIMATE.init(); {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L290 TraceCheckUtils]: 1: Hoare triple {143622#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; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L290 TraceCheckUtils]: 2: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143622#true} {143622#true} #108#return; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L272 TraceCheckUtils]: 4: Hoare triple {143622#true} call #t~ret9 := main(); {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L290 TraceCheckUtils]: 5: Hoare triple {143622#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; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L272 TraceCheckUtils]: 6: Hoare triple {143622#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L290 TraceCheckUtils]: 7: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143622#true} {143622#true} #94#return; {143622#true} is VALID [2022-04-28 12:35:38,937 INFO L272 TraceCheckUtils]: 11: Hoare triple {143622#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,938 INFO L290 TraceCheckUtils]: 12: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,938 INFO L290 TraceCheckUtils]: 13: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,938 INFO L290 TraceCheckUtils]: 14: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,938 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143622#true} {143622#true} #96#return; {143622#true} is VALID [2022-04-28 12:35:38,938 INFO L290 TraceCheckUtils]: 16: Hoare triple {143622#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,938 INFO L290 TraceCheckUtils]: 17: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,939 INFO L290 TraceCheckUtils]: 18: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 50);havoc #t~post6; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {143675#(and (= main_~r~0 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; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,940 INFO L290 TraceCheckUtils]: 20: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,940 INFO L290 TraceCheckUtils]: 21: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,940 INFO L290 TraceCheckUtils]: 22: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,941 INFO L290 TraceCheckUtils]: 23: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,941 INFO L290 TraceCheckUtils]: 24: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post8 < 50);havoc #t~post8; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,941 INFO L272 TraceCheckUtils]: 25: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,941 INFO L290 TraceCheckUtils]: 26: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,941 INFO L290 TraceCheckUtils]: 27: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,941 INFO L290 TraceCheckUtils]: 28: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,942 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #98#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,942 INFO L272 TraceCheckUtils]: 30: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,942 INFO L290 TraceCheckUtils]: 31: Hoare triple {143622#true} ~cond := #in~cond; {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:35:38,943 INFO L290 TraceCheckUtils]: 32: Hoare triple {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:38,943 INFO L290 TraceCheckUtils]: 33: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:38,943 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #100#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,944 INFO L272 TraceCheckUtils]: 35: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,944 INFO L290 TraceCheckUtils]: 36: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,944 INFO L290 TraceCheckUtils]: 37: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,944 INFO L290 TraceCheckUtils]: 38: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,944 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #102#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,944 INFO L272 TraceCheckUtils]: 40: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,944 INFO L290 TraceCheckUtils]: 41: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,945 INFO L290 TraceCheckUtils]: 42: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,945 INFO L290 TraceCheckUtils]: 43: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,945 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #104#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,946 INFO L290 TraceCheckUtils]: 45: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= 2 * ~v~0); {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,946 INFO L290 TraceCheckUtils]: 46: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,946 INFO L290 TraceCheckUtils]: 47: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,947 INFO L290 TraceCheckUtils]: 48: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 50);havoc #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,947 INFO L290 TraceCheckUtils]: 49: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 12:35:38,947 INFO L290 TraceCheckUtils]: 50: Hoare triple {143675#(and (= main_~r~0 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; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:35:38,948 INFO L290 TraceCheckUtils]: 51: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:35:38,948 INFO L290 TraceCheckUtils]: 52: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 50);havoc #t~post6; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 12:35:38,949 INFO L290 TraceCheckUtils]: 53: Hoare triple {143780#(and (= 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; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 12:35:38,949 INFO L290 TraceCheckUtils]: 54: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 12:35:38,949 INFO L290 TraceCheckUtils]: 55: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 12:35:38,950 INFO L290 TraceCheckUtils]: 56: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,950 INFO L290 TraceCheckUtils]: 57: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,950 INFO L290 TraceCheckUtils]: 58: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,951 INFO L272 TraceCheckUtils]: 59: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,951 INFO L290 TraceCheckUtils]: 60: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,951 INFO L290 TraceCheckUtils]: 61: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,951 INFO L290 TraceCheckUtils]: 62: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,951 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #98#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,951 INFO L272 TraceCheckUtils]: 64: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,952 INFO L290 TraceCheckUtils]: 65: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,952 INFO L290 TraceCheckUtils]: 66: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,952 INFO L290 TraceCheckUtils]: 67: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,952 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #100#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,952 INFO L272 TraceCheckUtils]: 69: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,953 INFO L290 TraceCheckUtils]: 70: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,953 INFO L290 TraceCheckUtils]: 71: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,953 INFO L290 TraceCheckUtils]: 72: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,953 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #102#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,953 INFO L272 TraceCheckUtils]: 74: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,953 INFO L290 TraceCheckUtils]: 75: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:35:38,954 INFO L290 TraceCheckUtils]: 76: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:35:38,954 INFO L290 TraceCheckUtils]: 77: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:35:38,954 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #104#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,955 INFO L290 TraceCheckUtils]: 79: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 12:35:38,955 INFO L290 TraceCheckUtils]: 80: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:35:38,955 INFO L290 TraceCheckUtils]: 81: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:35:38,956 INFO L290 TraceCheckUtils]: 82: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:35:38,956 INFO L290 TraceCheckUtils]: 83: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:35:38,957 INFO L290 TraceCheckUtils]: 84: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,957 INFO L290 TraceCheckUtils]: 85: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,957 INFO L290 TraceCheckUtils]: 86: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post6 < 50);havoc #t~post6; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,958 INFO L290 TraceCheckUtils]: 87: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,958 INFO L290 TraceCheckUtils]: 88: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,959 INFO L290 TraceCheckUtils]: 89: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post7 < 50);havoc #t~post7; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,959 INFO L290 TraceCheckUtils]: 90: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,959 INFO L290 TraceCheckUtils]: 91: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,960 INFO L290 TraceCheckUtils]: 92: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post8 < 50);havoc #t~post8; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 12:35:38,960 INFO L272 TraceCheckUtils]: 93: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:35:38,960 INFO L290 TraceCheckUtils]: 94: Hoare triple {143622#true} ~cond := #in~cond; {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:35:38,961 INFO L290 TraceCheckUtils]: 95: Hoare triple {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:38,961 INFO L290 TraceCheckUtils]: 96: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:35:38,969 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #98#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:35:38,969 INFO L272 TraceCheckUtils]: 98: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:35:38,970 INFO L290 TraceCheckUtils]: 99: Hoare triple {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:35:38,970 INFO L290 TraceCheckUtils]: 100: Hoare triple {143934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143623#false} is VALID [2022-04-28 12:35:38,970 INFO L290 TraceCheckUtils]: 101: Hoare triple {143623#false} assume !false; {143623#false} is VALID [2022-04-28 12:35:38,970 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 40 proven. 73 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 12:35:38,971 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:36:05,504 INFO L290 TraceCheckUtils]: 101: Hoare triple {143623#false} assume !false; {143623#false} is VALID [2022-04-28 12:36:05,505 INFO L290 TraceCheckUtils]: 100: Hoare triple {143934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143623#false} is VALID [2022-04-28 12:36:05,505 INFO L290 TraceCheckUtils]: 99: Hoare triple {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:36:05,506 INFO L272 TraceCheckUtils]: 98: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:36:05,507 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,507 INFO L290 TraceCheckUtils]: 96: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:36:05,507 INFO L290 TraceCheckUtils]: 95: Hoare triple {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:36:05,508 INFO L290 TraceCheckUtils]: 94: Hoare triple {143622#true} ~cond := #in~cond; {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:36:05,508 INFO L272 TraceCheckUtils]: 93: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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)); {143622#true} is VALID [2022-04-28 12:36:05,508 INFO L290 TraceCheckUtils]: 92: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 50);havoc #t~post8; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,509 INFO L290 TraceCheckUtils]: 91: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,509 INFO L290 TraceCheckUtils]: 90: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,510 INFO L290 TraceCheckUtils]: 89: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 50);havoc #t~post7; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,510 INFO L290 TraceCheckUtils]: 88: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,510 INFO L290 TraceCheckUtils]: 87: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,511 INFO L290 TraceCheckUtils]: 86: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 50);havoc #t~post6; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,511 INFO L290 TraceCheckUtils]: 85: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (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; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,806 INFO L290 TraceCheckUtils]: 84: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~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; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:36:05,807 INFO L290 TraceCheckUtils]: 83: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !(~c~0 >= ~b~0); {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,808 INFO L290 TraceCheckUtils]: 82: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 50);havoc #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,808 INFO L290 TraceCheckUtils]: 81: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,904 INFO L290 TraceCheckUtils]: 80: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,905 INFO L290 TraceCheckUtils]: 79: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !(~c~0 >= 2 * ~v~0); {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,905 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #104#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,905 INFO L290 TraceCheckUtils]: 77: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,906 INFO L290 TraceCheckUtils]: 76: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,906 INFO L290 TraceCheckUtils]: 75: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,906 INFO L272 TraceCheckUtils]: 74: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,906 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #102#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,906 INFO L290 TraceCheckUtils]: 72: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,907 INFO L290 TraceCheckUtils]: 71: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,907 INFO L290 TraceCheckUtils]: 70: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,907 INFO L272 TraceCheckUtils]: 69: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,907 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #100#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,908 INFO L290 TraceCheckUtils]: 67: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,908 INFO L290 TraceCheckUtils]: 66: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,908 INFO L290 TraceCheckUtils]: 65: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,908 INFO L272 TraceCheckUtils]: 64: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,908 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #98#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,909 INFO L290 TraceCheckUtils]: 62: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,909 INFO L290 TraceCheckUtils]: 61: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,909 INFO L290 TraceCheckUtils]: 60: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,909 INFO L272 TraceCheckUtils]: 59: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,909 INFO L290 TraceCheckUtils]: 58: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !!(#t~post8 < 50);havoc #t~post8; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,910 INFO L290 TraceCheckUtils]: 57: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,911 INFO L290 TraceCheckUtils]: 56: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 12:36:05,911 INFO L290 TraceCheckUtils]: 55: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 50);havoc #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,912 INFO L290 TraceCheckUtils]: 54: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,912 INFO L290 TraceCheckUtils]: 53: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= 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; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 12:36:05,912 INFO L290 TraceCheckUtils]: 52: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 50);havoc #t~post6; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:36:05,913 INFO L290 TraceCheckUtils]: 51: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:36:05,913 INFO L290 TraceCheckUtils]: 50: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~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; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:36:05,914 INFO L290 TraceCheckUtils]: 49: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= ~b~0); {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,914 INFO L290 TraceCheckUtils]: 48: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !!(#t~post7 < 50);havoc #t~post7; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,915 INFO L290 TraceCheckUtils]: 47: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,915 INFO L290 TraceCheckUtils]: 46: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,915 INFO L290 TraceCheckUtils]: 45: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= 2 * ~v~0); {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,916 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143622#true} {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #104#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,916 INFO L290 TraceCheckUtils]: 43: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,916 INFO L290 TraceCheckUtils]: 42: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,916 INFO L290 TraceCheckUtils]: 41: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,916 INFO L272 TraceCheckUtils]: 40: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,917 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143622#true} {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #102#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,917 INFO L290 TraceCheckUtils]: 38: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,917 INFO L290 TraceCheckUtils]: 37: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,917 INFO L290 TraceCheckUtils]: 36: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,917 INFO L272 TraceCheckUtils]: 35: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,918 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143622#true} #100#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 12:36:05,918 INFO L290 TraceCheckUtils]: 33: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:36:05,918 INFO L290 TraceCheckUtils]: 32: Hoare triple {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 31: Hoare triple {143622#true} ~cond := #in~cond; {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:36:05,919 INFO L272 TraceCheckUtils]: 30: Hoare triple {143622#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143622#true} {143622#true} #98#return; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 28: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 27: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 26: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L272 TraceCheckUtils]: 25: Hoare triple {143622#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 24: Hoare triple {143622#true} assume !!(#t~post8 < 50);havoc #t~post8; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 23: Hoare triple {143622#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 22: Hoare triple {143622#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 21: Hoare triple {143622#true} assume !!(#t~post7 < 50);havoc #t~post7; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 20: Hoare triple {143622#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 19: Hoare triple {143622#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143622#true} is VALID [2022-04-28 12:36:05,919 INFO L290 TraceCheckUtils]: 18: Hoare triple {143622#true} assume !!(#t~post6 < 50);havoc #t~post6; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 17: Hoare triple {143622#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 16: Hoare triple {143622#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143622#true} {143622#true} #96#return; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 14: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L272 TraceCheckUtils]: 11: Hoare triple {143622#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143622#true} {143622#true} #94#return; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 8: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 7: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L272 TraceCheckUtils]: 6: Hoare triple {143622#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L290 TraceCheckUtils]: 5: Hoare triple {143622#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; {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L272 TraceCheckUtils]: 4: Hoare triple {143622#true} call #t~ret9 := main(); {143622#true} is VALID [2022-04-28 12:36:05,920 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143622#true} {143622#true} #108#return; {143622#true} is VALID [2022-04-28 12:36:05,921 INFO L290 TraceCheckUtils]: 2: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 12:36:05,921 INFO L290 TraceCheckUtils]: 1: Hoare triple {143622#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; {143622#true} is VALID [2022-04-28 12:36:05,921 INFO L272 TraceCheckUtils]: 0: Hoare triple {143622#true} call ULTIMATE.init(); {143622#true} is VALID [2022-04-28 12:36:05,922 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 66 proven. 47 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 12:36:05,922 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:36:05,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1274261955] [2022-04-28 12:36:05,922 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:36:05,922 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1659913321] [2022-04-28 12:36:05,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1659913321] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:36:05,922 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:36:05,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 18 [2022-04-28 12:36:05,923 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:36:05,923 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [657151202] [2022-04-28 12:36:05,923 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [657151202] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:36:05,923 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:36:05,923 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 12:36:05,923 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [757386975] [2022-04-28 12:36:05,923 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:36:05,925 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 12:36:05,925 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:36:05,925 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:36:06,010 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:36:06,011 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 12:36:06,011 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:36:06,011 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 12:36:06,011 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=258, Unknown=0, NotChecked=0, Total=306 [2022-04-28 12:36:06,011 INFO L87 Difference]: Start difference. First operand 1518 states and 1985 transitions. Second operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:36:14,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:14,101 INFO L93 Difference]: Finished difference Result 1833 states and 2418 transitions. [2022-04-28 12:36:14,101 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 12:36:14,102 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 12:36:14,102 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:36:14,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:36:14,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 12:36:14,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:36:14,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 12:36:14,107 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 245 transitions. [2022-04-28 12:36:14,457 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-28 12:36:14,604 INFO L225 Difference]: With dead ends: 1833 [2022-04-28 12:36:14,604 INFO L226 Difference]: Without dead ends: 1831 [2022-04-28 12:36:14,604 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 183 SyntacticMatches, 4 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=128, Invalid=628, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:36:14,608 INFO L413 NwaCegarLoop]: 92 mSDtfsCounter, 149 mSDsluCounter, 498 mSDsCounter, 0 mSdLazyCounter, 779 mSolverCounterSat, 98 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 590 SdHoareTripleChecker+Invalid, 877 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 98 IncrementalHoareTripleChecker+Valid, 779 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:36:14,608 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [156 Valid, 590 Invalid, 877 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [98 Valid, 779 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-28 12:36:14,609 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1831 states. [2022-04-28 12:36:18,375 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1831 to 1765. [2022-04-28 12:36:18,375 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:36:18,377 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 12:36:18,378 INFO L74 IsIncluded]: Start isIncluded. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 12:36:18,379 INFO L87 Difference]: Start difference. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 12:36:18,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:18,478 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 12:36:18,478 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 12:36:18,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:36:18,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:36:18,482 INFO L74 IsIncluded]: Start isIncluded. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 12:36:18,483 INFO L87 Difference]: Start difference. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 12:36:18,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:18,592 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 12:36:18,592 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 12:36:18,594 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:36:18,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:36:18,594 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:36:18,594 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:36:18,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 12:36:18,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1765 states to 1765 states and 2340 transitions. [2022-04-28 12:36:18,746 INFO L78 Accepts]: Start accepts. Automaton has 1765 states and 2340 transitions. Word has length 102 [2022-04-28 12:36:18,746 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:36:18,747 INFO L495 AbstractCegarLoop]: Abstraction has 1765 states and 2340 transitions. [2022-04-28 12:36:18,747 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:36:18,747 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1765 states and 2340 transitions. [2022-04-28 12:36:24,433 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2340 edges. 2340 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:36:24,433 INFO L276 IsEmpty]: Start isEmpty. Operand 1765 states and 2340 transitions. [2022-04-28 12:36:24,434 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-28 12:36:24,434 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:36:24,434 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 4, 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, 1, 1, 1, 1] [2022-04-28 12:36:24,450 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-28 12:36:24,634 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-28 12:36:24,634 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:36:24,635 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:36:24,635 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 7 times [2022-04-28 12:36:24,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:36:24,635 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1252642698] [2022-04-28 12:36:24,635 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:36:24,635 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 8 times [2022-04-28 12:36:24,635 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:36:24,635 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1284624604] [2022-04-28 12:36:24,635 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:36:24,636 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:36:24,648 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:36:24,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1777775077] [2022-04-28 12:36:24,648 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:36:24,648 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:36:24,648 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:36:24,649 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:36:24,650 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-28 12:36:24,718 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:36:24,718 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:36:24,719 INFO L263 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 12:36:24,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:36:24,747 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:36:25,242 INFO L272 TraceCheckUtils]: 0: Hoare triple {155129#true} call ULTIMATE.init(); {155129#true} is VALID [2022-04-28 12:36:25,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {155129#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; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,243 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155137#(<= ~counter~0 0)} {155129#true} #108#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,243 INFO L272 TraceCheckUtils]: 4: Hoare triple {155137#(<= ~counter~0 0)} call #t~ret9 := main(); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,243 INFO L290 TraceCheckUtils]: 5: Hoare triple {155137#(<= ~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; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,244 INFO L272 TraceCheckUtils]: 6: Hoare triple {155137#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,244 INFO L290 TraceCheckUtils]: 7: Hoare triple {155137#(<= ~counter~0 0)} ~cond := #in~cond; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,244 INFO L290 TraceCheckUtils]: 8: Hoare triple {155137#(<= ~counter~0 0)} assume !(0 == ~cond); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,245 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155137#(<= ~counter~0 0)} {155137#(<= ~counter~0 0)} #94#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,245 INFO L272 TraceCheckUtils]: 11: Hoare triple {155137#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {155137#(<= ~counter~0 0)} ~cond := #in~cond; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,246 INFO L290 TraceCheckUtils]: 13: Hoare triple {155137#(<= ~counter~0 0)} assume !(0 == ~cond); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,246 INFO L290 TraceCheckUtils]: 14: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,247 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155137#(<= ~counter~0 0)} {155137#(<= ~counter~0 0)} #96#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,247 INFO L290 TraceCheckUtils]: 16: Hoare triple {155137#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:25,249 INFO L290 TraceCheckUtils]: 17: Hoare triple {155137#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 12:36:25,249 INFO L290 TraceCheckUtils]: 18: Hoare triple {155186#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 12:36:25,250 INFO L290 TraceCheckUtils]: 19: Hoare triple {155186#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 12:36:25,250 INFO L290 TraceCheckUtils]: 20: Hoare triple {155186#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:25,251 INFO L290 TraceCheckUtils]: 21: Hoare triple {155196#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:25,251 INFO L290 TraceCheckUtils]: 22: Hoare triple {155196#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:25,252 INFO L290 TraceCheckUtils]: 23: Hoare triple {155196#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,252 INFO L290 TraceCheckUtils]: 24: Hoare triple {155206#(<= ~counter~0 3)} assume !!(#t~post8 < 50);havoc #t~post8; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,253 INFO L272 TraceCheckUtils]: 25: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,253 INFO L290 TraceCheckUtils]: 26: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,253 INFO L290 TraceCheckUtils]: 27: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,254 INFO L290 TraceCheckUtils]: 28: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,254 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #98#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,255 INFO L272 TraceCheckUtils]: 30: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,255 INFO L290 TraceCheckUtils]: 31: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,255 INFO L290 TraceCheckUtils]: 32: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,255 INFO L290 TraceCheckUtils]: 33: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,256 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #100#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,256 INFO L272 TraceCheckUtils]: 35: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,257 INFO L290 TraceCheckUtils]: 36: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,257 INFO L290 TraceCheckUtils]: 37: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,257 INFO L290 TraceCheckUtils]: 38: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,258 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #102#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,258 INFO L272 TraceCheckUtils]: 40: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,258 INFO L290 TraceCheckUtils]: 41: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,259 INFO L290 TraceCheckUtils]: 42: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,259 INFO L290 TraceCheckUtils]: 43: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,259 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #104#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,260 INFO L290 TraceCheckUtils]: 45: Hoare triple {155206#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,260 INFO L290 TraceCheckUtils]: 46: Hoare triple {155206#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:25,261 INFO L290 TraceCheckUtils]: 47: Hoare triple {155206#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:25,261 INFO L290 TraceCheckUtils]: 48: Hoare triple {155279#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:25,262 INFO L290 TraceCheckUtils]: 49: Hoare triple {155279#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {155279#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:25,262 INFO L290 TraceCheckUtils]: 50: Hoare triple {155279#(<= ~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; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:25,263 INFO L290 TraceCheckUtils]: 51: Hoare triple {155279#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:25,263 INFO L290 TraceCheckUtils]: 52: Hoare triple {155292#(<= ~counter~0 5)} assume !!(#t~post6 < 50);havoc #t~post6; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:25,263 INFO L290 TraceCheckUtils]: 53: Hoare triple {155292#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:25,264 INFO L290 TraceCheckUtils]: 54: Hoare triple {155292#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:25,264 INFO L290 TraceCheckUtils]: 55: Hoare triple {155302#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:25,265 INFO L290 TraceCheckUtils]: 56: Hoare triple {155302#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:25,266 INFO L290 TraceCheckUtils]: 57: Hoare triple {155302#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,266 INFO L290 TraceCheckUtils]: 58: Hoare triple {155312#(<= ~counter~0 7)} assume !!(#t~post8 < 50);havoc #t~post8; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,266 INFO L272 TraceCheckUtils]: 59: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,267 INFO L290 TraceCheckUtils]: 60: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,267 INFO L290 TraceCheckUtils]: 61: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,267 INFO L290 TraceCheckUtils]: 62: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,268 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #98#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,268 INFO L272 TraceCheckUtils]: 64: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,269 INFO L290 TraceCheckUtils]: 65: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,269 INFO L290 TraceCheckUtils]: 66: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,269 INFO L290 TraceCheckUtils]: 67: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,270 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #100#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,270 INFO L272 TraceCheckUtils]: 69: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,270 INFO L290 TraceCheckUtils]: 70: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,271 INFO L290 TraceCheckUtils]: 71: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,271 INFO L290 TraceCheckUtils]: 72: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,271 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #102#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,272 INFO L272 TraceCheckUtils]: 74: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,272 INFO L290 TraceCheckUtils]: 75: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,272 INFO L290 TraceCheckUtils]: 76: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,273 INFO L290 TraceCheckUtils]: 77: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,273 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #104#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,273 INFO L290 TraceCheckUtils]: 79: Hoare triple {155312#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,274 INFO L290 TraceCheckUtils]: 80: Hoare triple {155312#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:25,275 INFO L290 TraceCheckUtils]: 81: Hoare triple {155312#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:25,282 INFO L290 TraceCheckUtils]: 82: Hoare triple {155385#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:25,282 INFO L290 TraceCheckUtils]: 83: Hoare triple {155385#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {155385#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:25,283 INFO L290 TraceCheckUtils]: 84: Hoare triple {155385#(<= ~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; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:25,284 INFO L290 TraceCheckUtils]: 85: Hoare triple {155385#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:25,284 INFO L290 TraceCheckUtils]: 86: Hoare triple {155398#(<= ~counter~0 9)} assume !!(#t~post6 < 50);havoc #t~post6; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:25,285 INFO L290 TraceCheckUtils]: 87: Hoare triple {155398#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:25,286 INFO L290 TraceCheckUtils]: 88: Hoare triple {155398#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:25,286 INFO L290 TraceCheckUtils]: 89: Hoare triple {155408#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:25,286 INFO L290 TraceCheckUtils]: 90: Hoare triple {155408#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:25,286 INFO L290 TraceCheckUtils]: 91: Hoare triple {155408#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155418#(<= |main_#t~post8| 10)} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 92: Hoare triple {155418#(<= |main_#t~post8| 10)} assume !(#t~post8 < 50);havoc #t~post8; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 93: Hoare triple {155130#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 94: Hoare triple {155130#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 95: Hoare triple {155130#false} assume !(#t~post7 < 50);havoc #t~post7; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 96: Hoare triple {155130#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; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 97: Hoare triple {155130#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 98: Hoare triple {155130#false} assume !(#t~post6 < 50);havoc #t~post6; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L272 TraceCheckUtils]: 99: Hoare triple {155130#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)); {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 100: Hoare triple {155130#false} ~cond := #in~cond; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 101: Hoare triple {155130#false} assume 0 == ~cond; {155130#false} is VALID [2022-04-28 12:36:25,287 INFO L290 TraceCheckUtils]: 102: Hoare triple {155130#false} assume !false; {155130#false} is VALID [2022-04-28 12:36:25,288 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:36:25,288 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:36:25,821 INFO L290 TraceCheckUtils]: 102: Hoare triple {155130#false} assume !false; {155130#false} is VALID [2022-04-28 12:36:25,821 INFO L290 TraceCheckUtils]: 101: Hoare triple {155130#false} assume 0 == ~cond; {155130#false} is VALID [2022-04-28 12:36:25,821 INFO L290 TraceCheckUtils]: 100: Hoare triple {155130#false} ~cond := #in~cond; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L272 TraceCheckUtils]: 99: Hoare triple {155130#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)); {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 98: Hoare triple {155130#false} assume !(#t~post6 < 50);havoc #t~post6; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 97: Hoare triple {155130#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 96: Hoare triple {155130#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; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 95: Hoare triple {155130#false} assume !(#t~post7 < 50);havoc #t~post7; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 94: Hoare triple {155130#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 93: Hoare triple {155130#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155130#false} is VALID [2022-04-28 12:36:25,822 INFO L290 TraceCheckUtils]: 92: Hoare triple {155482#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {155130#false} is VALID [2022-04-28 12:36:25,823 INFO L290 TraceCheckUtils]: 91: Hoare triple {155486#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155482#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:36:25,823 INFO L290 TraceCheckUtils]: 90: Hoare triple {155486#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155486#(< ~counter~0 50)} is VALID [2022-04-28 12:36:25,823 INFO L290 TraceCheckUtils]: 89: Hoare triple {155486#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {155486#(< ~counter~0 50)} is VALID [2022-04-28 12:36:25,825 INFO L290 TraceCheckUtils]: 88: Hoare triple {155496#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155486#(< ~counter~0 50)} is VALID [2022-04-28 12:36:25,826 INFO L290 TraceCheckUtils]: 87: Hoare triple {155496#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155496#(< ~counter~0 49)} is VALID [2022-04-28 12:36:25,826 INFO L290 TraceCheckUtils]: 86: Hoare triple {155496#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {155496#(< ~counter~0 49)} is VALID [2022-04-28 12:36:25,827 INFO L290 TraceCheckUtils]: 85: Hoare triple {155506#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155496#(< ~counter~0 49)} is VALID [2022-04-28 12:36:25,827 INFO L290 TraceCheckUtils]: 84: Hoare triple {155506#(< ~counter~0 48)} ~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; {155506#(< ~counter~0 48)} is VALID [2022-04-28 12:36:25,827 INFO L290 TraceCheckUtils]: 83: Hoare triple {155506#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {155506#(< ~counter~0 48)} is VALID [2022-04-28 12:36:25,828 INFO L290 TraceCheckUtils]: 82: Hoare triple {155506#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {155506#(< ~counter~0 48)} is VALID [2022-04-28 12:36:25,829 INFO L290 TraceCheckUtils]: 81: Hoare triple {155519#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155506#(< ~counter~0 48)} is VALID [2022-04-28 12:36:25,829 INFO L290 TraceCheckUtils]: 80: Hoare triple {155519#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,829 INFO L290 TraceCheckUtils]: 79: Hoare triple {155519#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,830 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #104#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,830 INFO L290 TraceCheckUtils]: 77: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,830 INFO L290 TraceCheckUtils]: 76: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,830 INFO L290 TraceCheckUtils]: 75: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,830 INFO L272 TraceCheckUtils]: 74: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,830 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #102#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,830 INFO L290 TraceCheckUtils]: 72: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L290 TraceCheckUtils]: 71: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L290 TraceCheckUtils]: 70: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L272 TraceCheckUtils]: 69: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #100#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,831 INFO L290 TraceCheckUtils]: 67: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L290 TraceCheckUtils]: 66: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L290 TraceCheckUtils]: 65: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,831 INFO L272 TraceCheckUtils]: 64: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,832 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155129#true} {155519#(< ~counter~0 47)} #98#return; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,832 INFO L290 TraceCheckUtils]: 62: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,832 INFO L290 TraceCheckUtils]: 61: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,832 INFO L290 TraceCheckUtils]: 60: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,832 INFO L272 TraceCheckUtils]: 59: Hoare triple {155519#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,833 INFO L290 TraceCheckUtils]: 58: Hoare triple {155519#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,834 INFO L290 TraceCheckUtils]: 57: Hoare triple {155592#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155519#(< ~counter~0 47)} is VALID [2022-04-28 12:36:25,834 INFO L290 TraceCheckUtils]: 56: Hoare triple {155592#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155592#(< ~counter~0 46)} is VALID [2022-04-28 12:36:25,834 INFO L290 TraceCheckUtils]: 55: Hoare triple {155592#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {155592#(< ~counter~0 46)} is VALID [2022-04-28 12:36:25,835 INFO L290 TraceCheckUtils]: 54: Hoare triple {155602#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155592#(< ~counter~0 46)} is VALID [2022-04-28 12:36:25,835 INFO L290 TraceCheckUtils]: 53: Hoare triple {155602#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155602#(< ~counter~0 45)} is VALID [2022-04-28 12:36:25,836 INFO L290 TraceCheckUtils]: 52: Hoare triple {155602#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {155602#(< ~counter~0 45)} is VALID [2022-04-28 12:36:25,836 INFO L290 TraceCheckUtils]: 51: Hoare triple {155612#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155602#(< ~counter~0 45)} is VALID [2022-04-28 12:36:25,837 INFO L290 TraceCheckUtils]: 50: Hoare triple {155612#(< ~counter~0 44)} ~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; {155612#(< ~counter~0 44)} is VALID [2022-04-28 12:36:25,837 INFO L290 TraceCheckUtils]: 49: Hoare triple {155612#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {155612#(< ~counter~0 44)} is VALID [2022-04-28 12:36:25,837 INFO L290 TraceCheckUtils]: 48: Hoare triple {155612#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {155612#(< ~counter~0 44)} is VALID [2022-04-28 12:36:25,838 INFO L290 TraceCheckUtils]: 47: Hoare triple {155625#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155612#(< ~counter~0 44)} is VALID [2022-04-28 12:36:25,838 INFO L290 TraceCheckUtils]: 46: Hoare triple {155625#(< ~counter~0 43)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,839 INFO L290 TraceCheckUtils]: 45: Hoare triple {155625#(< ~counter~0 43)} assume !(~c~0 >= 2 * ~v~0); {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,839 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #104#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,839 INFO L290 TraceCheckUtils]: 43: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,839 INFO L290 TraceCheckUtils]: 42: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,839 INFO L290 TraceCheckUtils]: 41: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,840 INFO L272 TraceCheckUtils]: 40: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,840 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #102#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,840 INFO L290 TraceCheckUtils]: 38: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,840 INFO L290 TraceCheckUtils]: 37: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,840 INFO L290 TraceCheckUtils]: 36: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,840 INFO L272 TraceCheckUtils]: 35: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,841 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #100#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,841 INFO L290 TraceCheckUtils]: 33: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,841 INFO L290 TraceCheckUtils]: 32: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,841 INFO L272 TraceCheckUtils]: 30: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,842 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155129#true} {155625#(< ~counter~0 43)} #98#return; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,842 INFO L290 TraceCheckUtils]: 28: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,842 INFO L290 TraceCheckUtils]: 26: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,842 INFO L272 TraceCheckUtils]: 25: Hoare triple {155625#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,842 INFO L290 TraceCheckUtils]: 24: Hoare triple {155625#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,843 INFO L290 TraceCheckUtils]: 23: Hoare triple {155698#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155625#(< ~counter~0 43)} is VALID [2022-04-28 12:36:25,843 INFO L290 TraceCheckUtils]: 22: Hoare triple {155698#(< ~counter~0 42)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155698#(< ~counter~0 42)} is VALID [2022-04-28 12:36:25,844 INFO L290 TraceCheckUtils]: 21: Hoare triple {155698#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {155698#(< ~counter~0 42)} is VALID [2022-04-28 12:36:25,845 INFO L290 TraceCheckUtils]: 20: Hoare triple {155708#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155698#(< ~counter~0 42)} is VALID [2022-04-28 12:36:25,845 INFO L290 TraceCheckUtils]: 19: Hoare triple {155708#(< ~counter~0 41)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155708#(< ~counter~0 41)} is VALID [2022-04-28 12:36:25,845 INFO L290 TraceCheckUtils]: 18: Hoare triple {155708#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {155708#(< ~counter~0 41)} is VALID [2022-04-28 12:36:25,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {155718#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155708#(< ~counter~0 41)} is VALID [2022-04-28 12:36:25,846 INFO L290 TraceCheckUtils]: 16: Hoare triple {155718#(< ~counter~0 40)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,847 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155129#true} {155718#(< ~counter~0 40)} #96#return; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,847 INFO L290 TraceCheckUtils]: 13: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,847 INFO L290 TraceCheckUtils]: 12: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,847 INFO L272 TraceCheckUtils]: 11: Hoare triple {155718#(< ~counter~0 40)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,847 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155129#true} {155718#(< ~counter~0 40)} #94#return; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,848 INFO L290 TraceCheckUtils]: 9: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 12:36:25,848 INFO L290 TraceCheckUtils]: 8: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 12:36:25,848 INFO L290 TraceCheckUtils]: 7: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 12:36:25,848 INFO L272 TraceCheckUtils]: 6: Hoare triple {155718#(< ~counter~0 40)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155129#true} is VALID [2022-04-28 12:36:25,848 INFO L290 TraceCheckUtils]: 5: Hoare triple {155718#(< ~counter~0 40)} 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; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,848 INFO L272 TraceCheckUtils]: 4: Hoare triple {155718#(< ~counter~0 40)} call #t~ret9 := main(); {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,849 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155718#(< ~counter~0 40)} {155129#true} #108#return; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,849 INFO L290 TraceCheckUtils]: 2: Hoare triple {155718#(< ~counter~0 40)} assume true; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,849 INFO L290 TraceCheckUtils]: 1: Hoare triple {155129#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; {155718#(< ~counter~0 40)} is VALID [2022-04-28 12:36:25,849 INFO L272 TraceCheckUtils]: 0: Hoare triple {155129#true} call ULTIMATE.init(); {155129#true} is VALID [2022-04-28 12:36:25,850 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:36:25,850 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:36:25,850 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1284624604] [2022-04-28 12:36:25,850 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:36:25,850 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1777775077] [2022-04-28 12:36:25,850 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1777775077] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:36:25,850 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:36:25,850 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 12:36:25,850 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:36:25,850 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1252642698] [2022-04-28 12:36:25,850 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1252642698] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:36:25,850 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:36:25,850 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 12:36:25,851 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1978733165] [2022-04-28 12:36:25,851 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:36:25,851 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 12:36:25,851 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:36:25,851 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:25,928 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-28 12:36:25,928 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 12:36:25,928 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:36:25,929 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 12:36:25,929 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 12:36:25,929 INFO L87 Difference]: Start difference. First operand 1765 states and 2340 transitions. Second operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:30,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:30,990 INFO L93 Difference]: Finished difference Result 2634 states and 3640 transitions. [2022-04-28 12:36:30,990 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 12:36:30,990 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 12:36:30,990 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:36:30,990 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:30,992 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 12:36:30,992 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:30,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 12:36:30,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 285 transitions. [2022-04-28 12:36:31,290 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:36:31,443 INFO L225 Difference]: With dead ends: 2634 [2022-04-28 12:36:31,443 INFO L226 Difference]: Without dead ends: 1870 [2022-04-28 12:36:31,445 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 63 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=465, Invalid=657, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 12:36:31,445 INFO L413 NwaCegarLoop]: 76 mSDtfsCounter, 215 mSDsluCounter, 254 mSDsCounter, 0 mSdLazyCounter, 164 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 215 SdHoareTripleChecker+Valid, 330 SdHoareTripleChecker+Invalid, 272 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 108 IncrementalHoareTripleChecker+Valid, 164 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:36:31,445 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [215 Valid, 330 Invalid, 272 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [108 Valid, 164 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 12:36:31,446 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1870 states. [2022-04-28 12:36:34,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1870 to 1825. [2022-04-28 12:36:34,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:36:34,969 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 12:36:34,970 INFO L74 IsIncluded]: Start isIncluded. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 12:36:34,971 INFO L87 Difference]: Start difference. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 12:36:35,075 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:35,075 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 12:36:35,075 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 12:36:35,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:36:35,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:36:35,079 INFO L74 IsIncluded]: Start isIncluded. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 12:36:35,080 INFO L87 Difference]: Start difference. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 12:36:35,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:35,185 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 12:36:35,185 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 12:36:35,187 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:36:35,187 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:36:35,187 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:36:35,187 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:36:35,189 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 12:36:35,359 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1825 states to 1825 states and 2413 transitions. [2022-04-28 12:36:35,360 INFO L78 Accepts]: Start accepts. Automaton has 1825 states and 2413 transitions. Word has length 103 [2022-04-28 12:36:35,360 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:36:35,360 INFO L495 AbstractCegarLoop]: Abstraction has 1825 states and 2413 transitions. [2022-04-28 12:36:35,360 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:35,361 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1825 states and 2413 transitions. [2022-04-28 12:36:41,748 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2413 edges. 2413 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:36:41,749 INFO L276 IsEmpty]: Start isEmpty. Operand 1825 states and 2413 transitions. [2022-04-28 12:36:41,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 12:36:41,749 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:36:41,749 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 5, 4, 4, 4, 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] [2022-04-28 12:36:41,766 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-28 12:36:41,962 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-28 12:36:41,962 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:36:41,962 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:36:41,962 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 7 times [2022-04-28 12:36:41,962 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:36:41,962 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1671361642] [2022-04-28 12:36:41,963 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:36:41,963 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 8 times [2022-04-28 12:36:41,963 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:36:41,963 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [796392625] [2022-04-28 12:36:41,963 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:36:41,963 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:36:41,973 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:36:41,974 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [973852960] [2022-04-28 12:36:41,974 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:36:41,974 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:36:41,974 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:36:41,983 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:36:41,998 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-28 12:36:42,040 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:36:42,040 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:36:42,041 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 12:36:42,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:36:42,067 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:36:42,583 INFO L272 TraceCheckUtils]: 0: Hoare triple {168446#true} call ULTIMATE.init(); {168446#true} is VALID [2022-04-28 12:36:42,583 INFO L290 TraceCheckUtils]: 1: Hoare triple {168446#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; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,583 INFO L290 TraceCheckUtils]: 2: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,584 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168454#(<= ~counter~0 0)} {168446#true} #108#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,584 INFO L272 TraceCheckUtils]: 4: Hoare triple {168454#(<= ~counter~0 0)} call #t~ret9 := main(); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,584 INFO L290 TraceCheckUtils]: 5: Hoare triple {168454#(<= ~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; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,585 INFO L272 TraceCheckUtils]: 6: Hoare triple {168454#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,585 INFO L290 TraceCheckUtils]: 7: Hoare triple {168454#(<= ~counter~0 0)} ~cond := #in~cond; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,585 INFO L290 TraceCheckUtils]: 8: Hoare triple {168454#(<= ~counter~0 0)} assume !(0 == ~cond); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,586 INFO L290 TraceCheckUtils]: 9: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,586 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168454#(<= ~counter~0 0)} {168454#(<= ~counter~0 0)} #94#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,586 INFO L272 TraceCheckUtils]: 11: Hoare triple {168454#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,587 INFO L290 TraceCheckUtils]: 12: Hoare triple {168454#(<= ~counter~0 0)} ~cond := #in~cond; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,587 INFO L290 TraceCheckUtils]: 13: Hoare triple {168454#(<= ~counter~0 0)} assume !(0 == ~cond); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,587 INFO L290 TraceCheckUtils]: 14: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,587 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168454#(<= ~counter~0 0)} {168454#(<= ~counter~0 0)} #96#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,588 INFO L290 TraceCheckUtils]: 16: Hoare triple {168454#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 12:36:42,590 INFO L290 TraceCheckUtils]: 17: Hoare triple {168454#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 12:36:42,590 INFO L290 TraceCheckUtils]: 18: Hoare triple {168503#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 12:36:42,591 INFO L290 TraceCheckUtils]: 19: Hoare triple {168503#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 12:36:42,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {168503#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:42,592 INFO L290 TraceCheckUtils]: 21: Hoare triple {168513#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:42,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {168513#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {168513#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:42,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {168513#(<= ~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; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 12:36:42,593 INFO L290 TraceCheckUtils]: 24: Hoare triple {168513#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:42,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {168526#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:42,594 INFO L290 TraceCheckUtils]: 26: Hoare triple {168526#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 12:36:42,595 INFO L290 TraceCheckUtils]: 27: Hoare triple {168526#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:42,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {168536#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:42,596 INFO L290 TraceCheckUtils]: 29: Hoare triple {168536#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 12:36:42,597 INFO L290 TraceCheckUtils]: 30: Hoare triple {168536#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,597 INFO L290 TraceCheckUtils]: 31: Hoare triple {168546#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,597 INFO L272 TraceCheckUtils]: 32: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,598 INFO L290 TraceCheckUtils]: 33: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,599 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #98#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,599 INFO L272 TraceCheckUtils]: 37: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,599 INFO L290 TraceCheckUtils]: 38: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,600 INFO L290 TraceCheckUtils]: 39: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,600 INFO L290 TraceCheckUtils]: 40: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,601 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #100#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,601 INFO L272 TraceCheckUtils]: 42: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,601 INFO L290 TraceCheckUtils]: 43: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,602 INFO L290 TraceCheckUtils]: 44: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,602 INFO L290 TraceCheckUtils]: 45: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,602 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #102#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,603 INFO L272 TraceCheckUtils]: 47: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,603 INFO L290 TraceCheckUtils]: 48: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,603 INFO L290 TraceCheckUtils]: 49: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,604 INFO L290 TraceCheckUtils]: 50: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,604 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #104#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,604 INFO L290 TraceCheckUtils]: 52: Hoare triple {168546#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,605 INFO L290 TraceCheckUtils]: 53: Hoare triple {168546#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 12:36:42,606 INFO L290 TraceCheckUtils]: 54: Hoare triple {168546#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:42,607 INFO L290 TraceCheckUtils]: 55: Hoare triple {168619#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:42,607 INFO L290 TraceCheckUtils]: 56: Hoare triple {168619#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {168619#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:42,607 INFO L290 TraceCheckUtils]: 57: Hoare triple {168619#(<= ~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; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 12:36:42,608 INFO L290 TraceCheckUtils]: 58: Hoare triple {168619#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:42,609 INFO L290 TraceCheckUtils]: 59: Hoare triple {168632#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:42,609 INFO L290 TraceCheckUtils]: 60: Hoare triple {168632#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 12:36:42,610 INFO L290 TraceCheckUtils]: 61: Hoare triple {168632#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:42,610 INFO L290 TraceCheckUtils]: 62: Hoare triple {168642#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:42,611 INFO L290 TraceCheckUtils]: 63: Hoare triple {168642#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 12:36:42,612 INFO L290 TraceCheckUtils]: 64: Hoare triple {168642#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,612 INFO L290 TraceCheckUtils]: 65: Hoare triple {168652#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,613 INFO L272 TraceCheckUtils]: 66: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,613 INFO L290 TraceCheckUtils]: 67: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,613 INFO L290 TraceCheckUtils]: 68: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,613 INFO L290 TraceCheckUtils]: 69: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,614 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #98#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,615 INFO L272 TraceCheckUtils]: 71: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,615 INFO L290 TraceCheckUtils]: 72: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,615 INFO L290 TraceCheckUtils]: 73: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,615 INFO L290 TraceCheckUtils]: 74: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,616 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #100#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,616 INFO L272 TraceCheckUtils]: 76: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,617 INFO L290 TraceCheckUtils]: 77: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,617 INFO L290 TraceCheckUtils]: 78: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,617 INFO L290 TraceCheckUtils]: 79: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,618 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #102#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,618 INFO L272 TraceCheckUtils]: 81: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,618 INFO L290 TraceCheckUtils]: 82: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,619 INFO L290 TraceCheckUtils]: 83: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,619 INFO L290 TraceCheckUtils]: 84: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,619 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #104#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,620 INFO L290 TraceCheckUtils]: 86: Hoare triple {168652#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,620 INFO L290 TraceCheckUtils]: 87: Hoare triple {168652#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 12:36:42,622 INFO L290 TraceCheckUtils]: 88: Hoare triple {168652#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:42,622 INFO L290 TraceCheckUtils]: 89: Hoare triple {168725#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:42,622 INFO L290 TraceCheckUtils]: 90: Hoare triple {168725#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168725#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:42,623 INFO L290 TraceCheckUtils]: 91: Hoare triple {168725#(<= ~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; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 12:36:42,624 INFO L290 TraceCheckUtils]: 92: Hoare triple {168725#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 12:36:42,624 INFO L290 TraceCheckUtils]: 93: Hoare triple {168738#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 12:36:42,624 INFO L290 TraceCheckUtils]: 94: Hoare triple {168738#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 12:36:42,624 INFO L290 TraceCheckUtils]: 95: Hoare triple {168738#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168748#(<= |main_#t~post7| 11)} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 96: Hoare triple {168748#(<= |main_#t~post7| 11)} assume !(#t~post7 < 50);havoc #t~post7; {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 97: Hoare triple {168447#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; {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 98: Hoare triple {168447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 99: Hoare triple {168447#false} assume !(#t~post6 < 50);havoc #t~post6; {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L272 TraceCheckUtils]: 100: Hoare triple {168447#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)); {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 101: Hoare triple {168447#false} ~cond := #in~cond; {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 102: Hoare triple {168447#false} assume 0 == ~cond; {168447#false} is VALID [2022-04-28 12:36:42,625 INFO L290 TraceCheckUtils]: 103: Hoare triple {168447#false} assume !false; {168447#false} is VALID [2022-04-28 12:36:42,626 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 133 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:36:42,626 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:36:43,093 INFO L290 TraceCheckUtils]: 103: Hoare triple {168447#false} assume !false; {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L290 TraceCheckUtils]: 102: Hoare triple {168447#false} assume 0 == ~cond; {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L290 TraceCheckUtils]: 101: Hoare triple {168447#false} ~cond := #in~cond; {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L272 TraceCheckUtils]: 100: Hoare triple {168447#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)); {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L290 TraceCheckUtils]: 99: Hoare triple {168447#false} assume !(#t~post6 < 50);havoc #t~post6; {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L290 TraceCheckUtils]: 98: Hoare triple {168447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L290 TraceCheckUtils]: 97: Hoare triple {168447#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; {168447#false} is VALID [2022-04-28 12:36:43,094 INFO L290 TraceCheckUtils]: 96: Hoare triple {168794#(< |main_#t~post7| 50)} assume !(#t~post7 < 50);havoc #t~post7; {168447#false} is VALID [2022-04-28 12:36:43,095 INFO L290 TraceCheckUtils]: 95: Hoare triple {168798#(< ~counter~0 50)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168794#(< |main_#t~post7| 50)} is VALID [2022-04-28 12:36:43,095 INFO L290 TraceCheckUtils]: 94: Hoare triple {168798#(< ~counter~0 50)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168798#(< ~counter~0 50)} is VALID [2022-04-28 12:36:43,095 INFO L290 TraceCheckUtils]: 93: Hoare triple {168798#(< ~counter~0 50)} assume !!(#t~post6 < 50);havoc #t~post6; {168798#(< ~counter~0 50)} is VALID [2022-04-28 12:36:43,098 INFO L290 TraceCheckUtils]: 92: Hoare triple {168808#(< ~counter~0 49)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168798#(< ~counter~0 50)} is VALID [2022-04-28 12:36:43,098 INFO L290 TraceCheckUtils]: 91: Hoare triple {168808#(< ~counter~0 49)} ~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; {168808#(< ~counter~0 49)} is VALID [2022-04-28 12:36:43,098 INFO L290 TraceCheckUtils]: 90: Hoare triple {168808#(< ~counter~0 49)} assume !(~c~0 >= ~b~0); {168808#(< ~counter~0 49)} is VALID [2022-04-28 12:36:43,098 INFO L290 TraceCheckUtils]: 89: Hoare triple {168808#(< ~counter~0 49)} assume !!(#t~post7 < 50);havoc #t~post7; {168808#(< ~counter~0 49)} is VALID [2022-04-28 12:36:43,099 INFO L290 TraceCheckUtils]: 88: Hoare triple {168821#(< ~counter~0 48)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168808#(< ~counter~0 49)} is VALID [2022-04-28 12:36:43,100 INFO L290 TraceCheckUtils]: 87: Hoare triple {168821#(< ~counter~0 48)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,100 INFO L290 TraceCheckUtils]: 86: Hoare triple {168821#(< ~counter~0 48)} assume !(~c~0 >= 2 * ~v~0); {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,101 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #104#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,101 INFO L290 TraceCheckUtils]: 84: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,101 INFO L290 TraceCheckUtils]: 83: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,101 INFO L290 TraceCheckUtils]: 82: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,101 INFO L272 TraceCheckUtils]: 81: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,101 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #102#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,101 INFO L290 TraceCheckUtils]: 79: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,102 INFO L290 TraceCheckUtils]: 78: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,102 INFO L290 TraceCheckUtils]: 77: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,102 INFO L272 TraceCheckUtils]: 76: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,102 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #100#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,102 INFO L290 TraceCheckUtils]: 74: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,102 INFO L290 TraceCheckUtils]: 73: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,102 INFO L290 TraceCheckUtils]: 72: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,103 INFO L272 TraceCheckUtils]: 71: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,103 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168446#true} {168821#(< ~counter~0 48)} #98#return; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,103 INFO L290 TraceCheckUtils]: 69: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,103 INFO L290 TraceCheckUtils]: 68: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,103 INFO L290 TraceCheckUtils]: 67: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,103 INFO L272 TraceCheckUtils]: 66: Hoare triple {168821#(< ~counter~0 48)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,104 INFO L290 TraceCheckUtils]: 65: Hoare triple {168821#(< ~counter~0 48)} assume !!(#t~post8 < 50);havoc #t~post8; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,105 INFO L290 TraceCheckUtils]: 64: Hoare triple {168894#(< ~counter~0 47)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168821#(< ~counter~0 48)} is VALID [2022-04-28 12:36:43,105 INFO L290 TraceCheckUtils]: 63: Hoare triple {168894#(< ~counter~0 47)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168894#(< ~counter~0 47)} is VALID [2022-04-28 12:36:43,105 INFO L290 TraceCheckUtils]: 62: Hoare triple {168894#(< ~counter~0 47)} assume !!(#t~post7 < 50);havoc #t~post7; {168894#(< ~counter~0 47)} is VALID [2022-04-28 12:36:43,106 INFO L290 TraceCheckUtils]: 61: Hoare triple {168904#(< ~counter~0 46)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168894#(< ~counter~0 47)} is VALID [2022-04-28 12:36:43,107 INFO L290 TraceCheckUtils]: 60: Hoare triple {168904#(< ~counter~0 46)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168904#(< ~counter~0 46)} is VALID [2022-04-28 12:36:43,107 INFO L290 TraceCheckUtils]: 59: Hoare triple {168904#(< ~counter~0 46)} assume !!(#t~post6 < 50);havoc #t~post6; {168904#(< ~counter~0 46)} is VALID [2022-04-28 12:36:43,108 INFO L290 TraceCheckUtils]: 58: Hoare triple {168914#(< ~counter~0 45)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168904#(< ~counter~0 46)} is VALID [2022-04-28 12:36:43,108 INFO L290 TraceCheckUtils]: 57: Hoare triple {168914#(< ~counter~0 45)} ~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; {168914#(< ~counter~0 45)} is VALID [2022-04-28 12:36:43,108 INFO L290 TraceCheckUtils]: 56: Hoare triple {168914#(< ~counter~0 45)} assume !(~c~0 >= ~b~0); {168914#(< ~counter~0 45)} is VALID [2022-04-28 12:36:43,109 INFO L290 TraceCheckUtils]: 55: Hoare triple {168914#(< ~counter~0 45)} assume !!(#t~post7 < 50);havoc #t~post7; {168914#(< ~counter~0 45)} is VALID [2022-04-28 12:36:43,110 INFO L290 TraceCheckUtils]: 54: Hoare triple {168927#(< ~counter~0 44)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168914#(< ~counter~0 45)} is VALID [2022-04-28 12:36:43,110 INFO L290 TraceCheckUtils]: 53: Hoare triple {168927#(< ~counter~0 44)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,110 INFO L290 TraceCheckUtils]: 52: Hoare triple {168927#(< ~counter~0 44)} assume !(~c~0 >= 2 * ~v~0); {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,111 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #104#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,111 INFO L290 TraceCheckUtils]: 50: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,111 INFO L290 TraceCheckUtils]: 49: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,111 INFO L290 TraceCheckUtils]: 48: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,111 INFO L272 TraceCheckUtils]: 47: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,112 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #102#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,112 INFO L290 TraceCheckUtils]: 45: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,112 INFO L290 TraceCheckUtils]: 44: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,112 INFO L290 TraceCheckUtils]: 43: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,112 INFO L272 TraceCheckUtils]: 42: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,113 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #100#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,113 INFO L290 TraceCheckUtils]: 40: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,113 INFO L290 TraceCheckUtils]: 39: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,113 INFO L290 TraceCheckUtils]: 38: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,113 INFO L272 TraceCheckUtils]: 37: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,114 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168446#true} {168927#(< ~counter~0 44)} #98#return; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,114 INFO L290 TraceCheckUtils]: 35: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,114 INFO L290 TraceCheckUtils]: 34: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,114 INFO L290 TraceCheckUtils]: 33: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,114 INFO L272 TraceCheckUtils]: 32: Hoare triple {168927#(< ~counter~0 44)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,114 INFO L290 TraceCheckUtils]: 31: Hoare triple {168927#(< ~counter~0 44)} assume !!(#t~post8 < 50);havoc #t~post8; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,115 INFO L290 TraceCheckUtils]: 30: Hoare triple {169000#(< ~counter~0 43)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168927#(< ~counter~0 44)} is VALID [2022-04-28 12:36:43,116 INFO L290 TraceCheckUtils]: 29: Hoare triple {169000#(< ~counter~0 43)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {169000#(< ~counter~0 43)} is VALID [2022-04-28 12:36:43,116 INFO L290 TraceCheckUtils]: 28: Hoare triple {169000#(< ~counter~0 43)} assume !!(#t~post7 < 50);havoc #t~post7; {169000#(< ~counter~0 43)} is VALID [2022-04-28 12:36:43,117 INFO L290 TraceCheckUtils]: 27: Hoare triple {169010#(< ~counter~0 42)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {169000#(< ~counter~0 43)} is VALID [2022-04-28 12:36:43,117 INFO L290 TraceCheckUtils]: 26: Hoare triple {169010#(< ~counter~0 42)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {169010#(< ~counter~0 42)} is VALID [2022-04-28 12:36:43,118 INFO L290 TraceCheckUtils]: 25: Hoare triple {169010#(< ~counter~0 42)} assume !!(#t~post6 < 50);havoc #t~post6; {169010#(< ~counter~0 42)} is VALID [2022-04-28 12:36:43,119 INFO L290 TraceCheckUtils]: 24: Hoare triple {169020#(< ~counter~0 41)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {169010#(< ~counter~0 42)} is VALID [2022-04-28 12:36:43,119 INFO L290 TraceCheckUtils]: 23: Hoare triple {169020#(< ~counter~0 41)} ~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; {169020#(< ~counter~0 41)} is VALID [2022-04-28 12:36:43,119 INFO L290 TraceCheckUtils]: 22: Hoare triple {169020#(< ~counter~0 41)} assume !(~c~0 >= ~b~0); {169020#(< ~counter~0 41)} is VALID [2022-04-28 12:36:43,120 INFO L290 TraceCheckUtils]: 21: Hoare triple {169020#(< ~counter~0 41)} assume !!(#t~post7 < 50);havoc #t~post7; {169020#(< ~counter~0 41)} is VALID [2022-04-28 12:36:43,121 INFO L290 TraceCheckUtils]: 20: Hoare triple {169033#(< ~counter~0 40)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {169020#(< ~counter~0 41)} is VALID [2022-04-28 12:36:43,121 INFO L290 TraceCheckUtils]: 19: Hoare triple {169033#(< ~counter~0 40)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {169033#(< ~counter~0 40)} is VALID [2022-04-28 12:36:43,121 INFO L290 TraceCheckUtils]: 18: Hoare triple {169033#(< ~counter~0 40)} assume !!(#t~post6 < 50);havoc #t~post6; {169033#(< ~counter~0 40)} is VALID [2022-04-28 12:36:43,122 INFO L290 TraceCheckUtils]: 17: Hoare triple {169043#(< ~counter~0 39)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {169033#(< ~counter~0 40)} is VALID [2022-04-28 12:36:43,122 INFO L290 TraceCheckUtils]: 16: Hoare triple {169043#(< ~counter~0 39)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,123 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168446#true} {169043#(< ~counter~0 39)} #96#return; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,123 INFO L290 TraceCheckUtils]: 14: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,123 INFO L290 TraceCheckUtils]: 13: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,123 INFO L290 TraceCheckUtils]: 12: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,123 INFO L272 TraceCheckUtils]: 11: Hoare triple {169043#(< ~counter~0 39)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,124 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168446#true} {169043#(< ~counter~0 39)} #94#return; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,124 INFO L290 TraceCheckUtils]: 9: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 12:36:43,124 INFO L290 TraceCheckUtils]: 8: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 12:36:43,124 INFO L290 TraceCheckUtils]: 7: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 12:36:43,124 INFO L272 TraceCheckUtils]: 6: Hoare triple {169043#(< ~counter~0 39)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168446#true} is VALID [2022-04-28 12:36:43,124 INFO L290 TraceCheckUtils]: 5: Hoare triple {169043#(< ~counter~0 39)} 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; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,124 INFO L272 TraceCheckUtils]: 4: Hoare triple {169043#(< ~counter~0 39)} call #t~ret9 := main(); {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,125 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {169043#(< ~counter~0 39)} {168446#true} #108#return; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,125 INFO L290 TraceCheckUtils]: 2: Hoare triple {169043#(< ~counter~0 39)} assume true; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,126 INFO L290 TraceCheckUtils]: 1: Hoare triple {168446#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; {169043#(< ~counter~0 39)} is VALID [2022-04-28 12:36:43,126 INFO L272 TraceCheckUtils]: 0: Hoare triple {168446#true} call ULTIMATE.init(); {168446#true} is VALID [2022-04-28 12:36:43,126 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 69 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:36:43,126 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:36:43,126 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [796392625] [2022-04-28 12:36:43,126 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:36:43,126 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [973852960] [2022-04-28 12:36:43,126 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [973852960] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:36:43,126 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:36:43,127 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 28 [2022-04-28 12:36:43,127 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:36:43,127 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1671361642] [2022-04-28 12:36:43,127 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1671361642] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:36:43,127 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:36:43,127 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 12:36:43,127 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1714443414] [2022-04-28 12:36:43,127 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:36:43,127 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 12:36:43,127 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:36:43,127 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:43,209 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:36:43,209 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 12:36:43,209 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:36:43,209 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 12:36:43,210 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=330, Invalid=426, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:36:43,210 INFO L87 Difference]: Start difference. First operand 1825 states and 2413 transitions. Second operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:50,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:50,232 INFO L93 Difference]: Finished difference Result 2758 states and 3762 transitions. [2022-04-28 12:36:50,232 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 12:36:50,233 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 12:36:50,233 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:36:50,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:50,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 12:36:50,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:50,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 12:36:50,237 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 314 transitions. [2022-04-28 12:36:50,596 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:36:50,802 INFO L225 Difference]: With dead ends: 2758 [2022-04-28 12:36:50,802 INFO L226 Difference]: Without dead ends: 2189 [2022-04-28 12:36:50,803 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=556, Invalid=776, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 12:36:50,804 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 275 mSDsluCounter, 271 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 167 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 275 SdHoareTripleChecker+Valid, 348 SdHoareTripleChecker+Invalid, 345 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 167 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:36:50,804 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [275 Valid, 348 Invalid, 345 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [167 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:36:50,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2189 states. [2022-04-28 12:36:54,259 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2189 to 2064. [2022-04-28 12:36:54,259 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:36:54,261 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 12:36:54,262 INFO L74 IsIncluded]: Start isIncluded. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 12:36:54,264 INFO L87 Difference]: Start difference. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 12:36:54,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:54,402 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 12:36:54,402 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 12:36:54,404 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:36:54,404 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:36:54,406 INFO L74 IsIncluded]: Start isIncluded. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 12:36:54,408 INFO L87 Difference]: Start difference. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 12:36:54,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:36:54,545 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 12:36:54,545 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 12:36:54,548 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:36:54,548 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:36:54,548 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:36:54,548 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:36:54,550 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 12:36:54,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2064 states to 2064 states and 2722 transitions. [2022-04-28 12:36:54,764 INFO L78 Accepts]: Start accepts. Automaton has 2064 states and 2722 transitions. Word has length 104 [2022-04-28 12:36:54,764 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:36:54,764 INFO L495 AbstractCegarLoop]: Abstraction has 2064 states and 2722 transitions. [2022-04-28 12:36:54,764 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:36:54,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2064 states and 2722 transitions. [2022-04-28 12:37:02,553 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2722 edges. 2722 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:37:02,553 INFO L276 IsEmpty]: Start isEmpty. Operand 2064 states and 2722 transitions. [2022-04-28 12:37:02,554 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 12:37:02,554 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:37:02,554 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-28 12:37:02,571 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-28 12:37:02,754 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-28 12:37:02,755 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:37:02,755 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:37:02,755 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 7 times [2022-04-28 12:37:02,755 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:37:02,755 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [245014177] [2022-04-28 12:37:02,755 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:37:02,756 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 8 times [2022-04-28 12:37:02,756 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:37:02,756 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1949744307] [2022-04-28 12:37:02,756 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:37:02,756 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:37:02,771 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:37:02,771 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1071446917] [2022-04-28 12:37:02,771 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:37:02,771 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:37:02,771 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:37:02,773 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:37:02,773 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-28 12:37:02,833 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:37:02,834 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:37:02,835 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-28 12:37:02,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:37:02,854 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:37:04,264 INFO L272 TraceCheckUtils]: 0: Hoare triple {183137#true} call ULTIMATE.init(); {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {183137#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; {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L290 TraceCheckUtils]: 2: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183137#true} {183137#true} #108#return; {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L272 TraceCheckUtils]: 4: Hoare triple {183137#true} call #t~ret9 := main(); {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L290 TraceCheckUtils]: 5: Hoare triple {183137#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; {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L272 TraceCheckUtils]: 6: Hoare triple {183137#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:37:04,264 INFO L290 TraceCheckUtils]: 7: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L290 TraceCheckUtils]: 8: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L290 TraceCheckUtils]: 9: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183137#true} {183137#true} #94#return; {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L272 TraceCheckUtils]: 11: Hoare triple {183137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L290 TraceCheckUtils]: 12: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L290 TraceCheckUtils]: 13: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L290 TraceCheckUtils]: 14: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183137#true} {183137#true} #96#return; {183137#true} is VALID [2022-04-28 12:37:04,265 INFO L290 TraceCheckUtils]: 16: Hoare triple {183137#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,266 INFO L290 TraceCheckUtils]: 17: Hoare triple {183190#(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; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,266 INFO L290 TraceCheckUtils]: 18: Hoare triple {183190#(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 < 50);havoc #t~post6; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,266 INFO L290 TraceCheckUtils]: 19: Hoare triple {183190#(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; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,267 INFO L290 TraceCheckUtils]: 20: Hoare triple {183200#(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; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,267 INFO L290 TraceCheckUtils]: 21: Hoare triple {183200#(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 < 50);havoc #t~post7; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,268 INFO L290 TraceCheckUtils]: 22: Hoare triple {183200#(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; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,268 INFO L290 TraceCheckUtils]: 23: Hoare triple {183210#(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; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,268 INFO L290 TraceCheckUtils]: 24: Hoare triple {183210#(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 < 50);havoc #t~post8; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,268 INFO L272 TraceCheckUtils]: 25: Hoare triple {183210#(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)); {183137#true} is VALID [2022-04-28 12:37:04,269 INFO L290 TraceCheckUtils]: 26: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,269 INFO L290 TraceCheckUtils]: 27: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,269 INFO L290 TraceCheckUtils]: 28: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,269 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183137#true} {183210#(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; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,269 INFO L272 TraceCheckUtils]: 30: Hoare triple {183210#(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)); {183137#true} is VALID [2022-04-28 12:37:04,269 INFO L290 TraceCheckUtils]: 31: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,270 INFO L290 TraceCheckUtils]: 32: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,270 INFO L290 TraceCheckUtils]: 33: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,270 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183137#true} {183210#(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; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,270 INFO L272 TraceCheckUtils]: 35: Hoare triple {183210#(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)); {183137#true} is VALID [2022-04-28 12:37:04,270 INFO L290 TraceCheckUtils]: 36: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,270 INFO L290 TraceCheckUtils]: 37: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,270 INFO L290 TraceCheckUtils]: 38: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,271 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183137#true} {183210#(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; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,271 INFO L272 TraceCheckUtils]: 40: Hoare triple {183210#(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)); {183137#true} is VALID [2022-04-28 12:37:04,271 INFO L290 TraceCheckUtils]: 41: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,271 INFO L290 TraceCheckUtils]: 42: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,271 INFO L290 TraceCheckUtils]: 43: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,272 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183137#true} {183210#(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; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,272 INFO L290 TraceCheckUtils]: 45: Hoare triple {183210#(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; {183280#(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-28 12:37:04,273 INFO L290 TraceCheckUtils]: 46: Hoare triple {183280#(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; {183280#(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-28 12:37:04,273 INFO L290 TraceCheckUtils]: 47: Hoare triple {183280#(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 < 50);havoc #t~post8; {183280#(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-28 12:37:04,273 INFO L272 TraceCheckUtils]: 48: Hoare triple {183280#(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)); {183137#true} is VALID [2022-04-28 12:37:04,273 INFO L290 TraceCheckUtils]: 49: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,273 INFO L290 TraceCheckUtils]: 50: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,273 INFO L290 TraceCheckUtils]: 51: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,274 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183137#true} {183280#(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; {183280#(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-28 12:37:04,274 INFO L272 TraceCheckUtils]: 53: Hoare triple {183280#(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)); {183137#true} is VALID [2022-04-28 12:37:04,274 INFO L290 TraceCheckUtils]: 54: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,274 INFO L290 TraceCheckUtils]: 55: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,274 INFO L290 TraceCheckUtils]: 56: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,275 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183137#true} {183280#(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; {183280#(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-28 12:37:04,275 INFO L272 TraceCheckUtils]: 58: Hoare triple {183280#(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)); {183137#true} is VALID [2022-04-28 12:37:04,275 INFO L290 TraceCheckUtils]: 59: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,275 INFO L290 TraceCheckUtils]: 60: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,275 INFO L290 TraceCheckUtils]: 61: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,276 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183137#true} {183280#(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; {183280#(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-28 12:37:04,276 INFO L272 TraceCheckUtils]: 63: Hoare triple {183280#(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)); {183137#true} is VALID [2022-04-28 12:37:04,276 INFO L290 TraceCheckUtils]: 64: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,276 INFO L290 TraceCheckUtils]: 65: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,276 INFO L290 TraceCheckUtils]: 66: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,277 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183137#true} {183280#(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; {183280#(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-28 12:37:04,277 INFO L290 TraceCheckUtils]: 68: Hoare triple {183280#(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); {183280#(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-28 12:37:04,278 INFO L290 TraceCheckUtils]: 69: Hoare triple {183280#(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; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,279 INFO L290 TraceCheckUtils]: 70: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,279 INFO L290 TraceCheckUtils]: 71: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,280 INFO L290 TraceCheckUtils]: 72: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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; {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,280 INFO L290 TraceCheckUtils]: 73: Hoare triple {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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; {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,281 INFO L290 TraceCheckUtils]: 74: Hoare triple {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,281 INFO L272 TraceCheckUtils]: 75: Hoare triple {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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)); {183137#true} is VALID [2022-04-28 12:37:04,281 INFO L290 TraceCheckUtils]: 76: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:37:04,281 INFO L290 TraceCheckUtils]: 77: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:37:04,281 INFO L290 TraceCheckUtils]: 78: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:37:04,282 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,282 INFO L272 TraceCheckUtils]: 80: Hoare triple {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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)); {183137#true} is VALID [2022-04-28 12:37:04,282 INFO L290 TraceCheckUtils]: 81: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:37:04,283 INFO L290 TraceCheckUtils]: 82: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:37:04,283 INFO L290 TraceCheckUtils]: 83: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:37:04,283 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,284 INFO L272 TraceCheckUtils]: 85: Hoare triple {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~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)); {183137#true} is VALID [2022-04-28 12:37:04,284 INFO L290 TraceCheckUtils]: 86: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:37:04,284 INFO L290 TraceCheckUtils]: 87: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:37:04,284 INFO L290 TraceCheckUtils]: 88: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:37:04,285 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(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) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183417#(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-28 12:37:04,285 INFO L272 TraceCheckUtils]: 90: Hoare triple {183417#(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)); {183137#true} is VALID [2022-04-28 12:37:04,285 INFO L290 TraceCheckUtils]: 91: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:37:04,285 INFO L290 TraceCheckUtils]: 92: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:37:04,285 INFO L290 TraceCheckUtils]: 93: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:37:04,286 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183137#true} {183417#(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; {183417#(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-28 12:37:04,286 INFO L290 TraceCheckUtils]: 95: Hoare triple {183417#(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); {183417#(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-28 12:37:04,287 INFO L290 TraceCheckUtils]: 96: Hoare triple {183417#(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; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,288 INFO L290 TraceCheckUtils]: 97: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,288 INFO L290 TraceCheckUtils]: 98: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 50);havoc #t~post7; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,288 INFO L290 TraceCheckUtils]: 99: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 12:37:04,289 INFO L290 TraceCheckUtils]: 100: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~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; {183452#(and (= 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) (= main_~q~0 1))} is VALID [2022-04-28 12:37:04,289 INFO L290 TraceCheckUtils]: 101: Hoare triple {183452#(and (= 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) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183452#(and (= 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) (= main_~q~0 1))} is VALID [2022-04-28 12:37:04,290 INFO L290 TraceCheckUtils]: 102: Hoare triple {183452#(and (= 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) (= main_~q~0 1))} assume !!(#t~post6 < 50);havoc #t~post6; {183452#(and (= 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) (= main_~q~0 1))} is VALID [2022-04-28 12:37:04,290 INFO L290 TraceCheckUtils]: 103: Hoare triple {183452#(and (= 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) (= main_~q~0 1))} assume !(0 != ~b~0); {183462#(and (= (+ (* 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) (= main_~q~0 1))} is VALID [2022-04-28 12:37:04,291 INFO L272 TraceCheckUtils]: 104: Hoare triple {183462#(and (= (+ (* 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) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:37:04,291 INFO L290 TraceCheckUtils]: 105: Hoare triple {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183470#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:37:04,291 INFO L290 TraceCheckUtils]: 106: Hoare triple {183470#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183138#false} is VALID [2022-04-28 12:37:04,291 INFO L290 TraceCheckUtils]: 107: Hoare triple {183138#false} assume !false; {183138#false} is VALID [2022-04-28 12:37:04,292 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-28 12:37:04,292 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:38:07,237 INFO L290 TraceCheckUtils]: 107: Hoare triple {183138#false} assume !false; {183138#false} is VALID [2022-04-28 12:38:07,237 INFO L290 TraceCheckUtils]: 106: Hoare triple {183470#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183138#false} is VALID [2022-04-28 12:38:07,237 INFO L290 TraceCheckUtils]: 105: Hoare triple {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183470#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:38:07,238 INFO L272 TraceCheckUtils]: 104: Hoare triple {183486#(= (+ (* 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)); {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:38:07,238 INFO L290 TraceCheckUtils]: 103: Hoare triple {183490#(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); {183486#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:38:07,239 INFO L290 TraceCheckUtils]: 102: Hoare triple {183490#(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 < 50);havoc #t~post6; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:38:07,239 INFO L290 TraceCheckUtils]: 101: Hoare triple {183490#(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; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:38:07,342 INFO L290 TraceCheckUtils]: 100: Hoare triple {183500#(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; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:38:07,343 INFO L290 TraceCheckUtils]: 99: Hoare triple {183500#(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); {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,343 INFO L290 TraceCheckUtils]: 98: Hoare triple {183500#(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 < 50);havoc #t~post7; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,344 INFO L290 TraceCheckUtils]: 97: Hoare triple {183500#(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; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,459 INFO L290 TraceCheckUtils]: 96: Hoare triple {183513#(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; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,459 INFO L290 TraceCheckUtils]: 95: Hoare triple {183513#(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); {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,460 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183137#true} {183513#(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; {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,460 INFO L290 TraceCheckUtils]: 93: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,460 INFO L290 TraceCheckUtils]: 92: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,460 INFO L290 TraceCheckUtils]: 91: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,460 INFO L272 TraceCheckUtils]: 90: Hoare triple {183513#(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)); {183137#true} is VALID [2022-04-28 12:38:07,461 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183535#(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; {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:38:07,461 INFO L290 TraceCheckUtils]: 88: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:07,462 INFO L290 TraceCheckUtils]: 87: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:07,462 INFO L290 TraceCheckUtils]: 86: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:38:07,462 INFO L272 TraceCheckUtils]: 85: Hoare triple {183535#(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)); {183137#true} is VALID [2022-04-28 12:38:07,463 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183552#(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; {183535#(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-28 12:38:07,463 INFO L290 TraceCheckUtils]: 83: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:07,463 INFO L290 TraceCheckUtils]: 82: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:07,464 INFO L290 TraceCheckUtils]: 81: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:38:07,464 INFO L272 TraceCheckUtils]: 80: Hoare triple {183552#(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)); {183137#true} is VALID [2022-04-28 12:38:07,465 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183568#(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; {183552#(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-28 12:38:07,465 INFO L290 TraceCheckUtils]: 78: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:07,465 INFO L290 TraceCheckUtils]: 77: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:07,465 INFO L290 TraceCheckUtils]: 76: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:38:07,465 INFO L272 TraceCheckUtils]: 75: Hoare triple {183568#(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)); {183137#true} is VALID [2022-04-28 12:38:07,466 INFO L290 TraceCheckUtils]: 74: Hoare triple {183568#(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 < 50);havoc #t~post8; {183568#(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-28 12:38:07,467 INFO L290 TraceCheckUtils]: 73: Hoare triple {183568#(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; {183568#(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-28 12:38:07,612 INFO L290 TraceCheckUtils]: 72: Hoare triple {183137#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183568#(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-28 12:38:07,612 INFO L290 TraceCheckUtils]: 71: Hoare triple {183137#true} assume !!(#t~post7 < 50);havoc #t~post7; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 70: Hoare triple {183137#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 69: Hoare triple {183137#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 68: Hoare triple {183137#true} assume !(~c~0 >= 2 * ~v~0); {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183137#true} {183137#true} #104#return; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 66: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 65: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 64: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L272 TraceCheckUtils]: 63: Hoare triple {183137#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183137#true} {183137#true} #102#return; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 61: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 60: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 59: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L272 TraceCheckUtils]: 58: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183137#true} {183137#true} #100#return; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 56: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,613 INFO L290 TraceCheckUtils]: 55: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 54: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L272 TraceCheckUtils]: 53: Hoare triple {183137#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183137#true} {183137#true} #98#return; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 51: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 50: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 49: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L272 TraceCheckUtils]: 48: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 47: Hoare triple {183137#true} assume !!(#t~post8 < 50);havoc #t~post8; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 46: Hoare triple {183137#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 45: Hoare triple {183137#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183137#true} {183137#true} #104#return; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 43: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 42: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L290 TraceCheckUtils]: 41: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,614 INFO L272 TraceCheckUtils]: 40: Hoare triple {183137#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183137#true} {183137#true} #102#return; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 38: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 37: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 36: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L272 TraceCheckUtils]: 35: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183137#true} {183137#true} #100#return; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 33: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 32: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 31: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L272 TraceCheckUtils]: 30: Hoare triple {183137#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183137#true} {183137#true} #98#return; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 28: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 27: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L290 TraceCheckUtils]: 26: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,615 INFO L272 TraceCheckUtils]: 25: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 24: Hoare triple {183137#true} assume !!(#t~post8 < 50);havoc #t~post8; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 23: Hoare triple {183137#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 22: Hoare triple {183137#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 21: Hoare triple {183137#true} assume !!(#t~post7 < 50);havoc #t~post7; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 20: Hoare triple {183137#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 19: Hoare triple {183137#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 18: Hoare triple {183137#true} assume !!(#t~post6 < 50);havoc #t~post6; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 17: Hoare triple {183137#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 16: Hoare triple {183137#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183137#true} {183137#true} #96#return; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 14: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 13: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 12: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L272 TraceCheckUtils]: 11: Hoare triple {183137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183137#true} {183137#true} #94#return; {183137#true} is VALID [2022-04-28 12:38:07,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L290 TraceCheckUtils]: 7: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L272 TraceCheckUtils]: 6: Hoare triple {183137#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L290 TraceCheckUtils]: 5: Hoare triple {183137#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; {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L272 TraceCheckUtils]: 4: Hoare triple {183137#true} call #t~ret9 := main(); {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183137#true} {183137#true} #108#return; {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L290 TraceCheckUtils]: 2: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L290 TraceCheckUtils]: 1: Hoare triple {183137#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; {183137#true} is VALID [2022-04-28 12:38:07,617 INFO L272 TraceCheckUtils]: 0: Hoare triple {183137#true} call ULTIMATE.init(); {183137#true} is VALID [2022-04-28 12:38:07,618 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-28 12:38:07,618 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:38:07,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1949744307] [2022-04-28 12:38:07,618 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:38:07,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1071446917] [2022-04-28 12:38:07,618 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1071446917] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:38:07,618 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:38:07,618 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-28 12:38:07,618 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:38:07,618 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [245014177] [2022-04-28 12:38:07,618 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [245014177] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:38:07,618 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:38:07,618 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 12:38:07,618 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1238462648] [2022-04-28 12:38:07,619 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:38:07,619 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 12:38:07,619 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:38:07,619 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 12:38:07,726 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:38:07,726 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 12:38:07,726 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:38:07,726 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 12:38:07,727 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-28 12:38:07,727 INFO L87 Difference]: Start difference. First operand 2064 states and 2722 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 12:38:16,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:38:16,394 INFO L93 Difference]: Finished difference Result 2130 states and 2803 transitions. [2022-04-28 12:38:16,394 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 12:38:16,395 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 12:38:16,395 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:38:16,395 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 12:38:16,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 12:38:16,397 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 12:38:16,398 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 12:38:16,398 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 179 transitions. [2022-04-28 12:38:16,671 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:38:16,861 INFO L225 Difference]: With dead ends: 2130 [2022-04-28 12:38:16,862 INFO L226 Difference]: Without dead ends: 2125 [2022-04-28 12:38:16,862 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 192 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=122, Invalid=634, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:38:16,863 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 80 mSDsluCounter, 482 mSDsCounter, 0 mSdLazyCounter, 903 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 547 SdHoareTripleChecker+Invalid, 989 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 86 IncrementalHoareTripleChecker+Valid, 903 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 12:38:16,863 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [98 Valid, 547 Invalid, 989 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 903 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 12:38:16,864 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2125 states. [2022-04-28 12:38:20,359 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2125 to 2071. [2022-04-28 12:38:20,359 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:38:20,361 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 12:38:20,362 INFO L74 IsIncluded]: Start isIncluded. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 12:38:20,363 INFO L87 Difference]: Start difference. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 12:38:20,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:38:20,494 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 12:38:20,494 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 12:38:20,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:38:20,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:38:20,499 INFO L74 IsIncluded]: Start isIncluded. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 12:38:20,500 INFO L87 Difference]: Start difference. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 12:38:20,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:38:20,630 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 12:38:20,630 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 12:38:20,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:38:20,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:38:20,632 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:38:20,632 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:38:20,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 12:38:20,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2071 states to 2071 states and 2721 transitions. [2022-04-28 12:38:20,844 INFO L78 Accepts]: Start accepts. Automaton has 2071 states and 2721 transitions. Word has length 108 [2022-04-28 12:38:20,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:38:20,844 INFO L495 AbstractCegarLoop]: Abstraction has 2071 states and 2721 transitions. [2022-04-28 12:38:20,844 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 12:38:20,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2071 states and 2721 transitions. [2022-04-28 12:38:28,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2721 edges. 2721 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:38:28,717 INFO L276 IsEmpty]: Start isEmpty. Operand 2071 states and 2721 transitions. [2022-04-28 12:38:28,718 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 12:38:28,718 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:38:28,718 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:38:28,747 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-28 12:38:28,918 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable40 [2022-04-28 12:38:28,919 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:38:28,919 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:38:28,919 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 9 times [2022-04-28 12:38:28,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:38:28,919 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [210533076] [2022-04-28 12:38:28,919 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:38:28,919 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 10 times [2022-04-28 12:38:28,920 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:38:28,920 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1349846827] [2022-04-28 12:38:28,920 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:38:28,920 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:38:28,930 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:38:28,930 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1181066371] [2022-04-28 12:38:28,930 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:38:28,931 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:38:28,931 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:38:28,932 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:38:28,932 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-28 12:38:29,026 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:38:29,027 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:38:29,048 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-28 12:38:29,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:38:29,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:38:49,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {196468#true} call ULTIMATE.init(); {196468#true} is VALID [2022-04-28 12:38:49,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {196468#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; {196468#true} is VALID [2022-04-28 12:38:49,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,220 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196468#true} {196468#true} #108#return; {196468#true} is VALID [2022-04-28 12:38:49,220 INFO L272 TraceCheckUtils]: 4: Hoare triple {196468#true} call #t~ret9 := main(); {196468#true} is VALID [2022-04-28 12:38:49,220 INFO L290 TraceCheckUtils]: 5: Hoare triple {196468#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; {196468#true} is VALID [2022-04-28 12:38:49,221 INFO L272 TraceCheckUtils]: 6: Hoare triple {196468#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,221 INFO L290 TraceCheckUtils]: 7: Hoare triple {196468#true} ~cond := #in~cond; {196494#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:38:49,221 INFO L290 TraceCheckUtils]: 8: Hoare triple {196494#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {196498#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:38:49,221 INFO L290 TraceCheckUtils]: 9: Hoare triple {196498#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {196498#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:38:49,222 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196498#(not (= |assume_abort_if_not_#in~cond| 0))} {196468#true} #94#return; {196505#(<= 1 main_~x~0)} is VALID [2022-04-28 12:38:49,222 INFO L272 TraceCheckUtils]: 11: Hoare triple {196505#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,222 INFO L290 TraceCheckUtils]: 12: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,222 INFO L290 TraceCheckUtils]: 13: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,222 INFO L290 TraceCheckUtils]: 14: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,223 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196468#true} {196505#(<= 1 main_~x~0)} #96#return; {196505#(<= 1 main_~x~0)} is VALID [2022-04-28 12:38:49,223 INFO L290 TraceCheckUtils]: 16: Hoare triple {196505#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,223 INFO L290 TraceCheckUtils]: 17: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,224 INFO L290 TraceCheckUtils]: 18: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,224 INFO L290 TraceCheckUtils]: 19: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:38:49,225 INFO L290 TraceCheckUtils]: 20: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:38:49,225 INFO L290 TraceCheckUtils]: 21: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:38:49,225 INFO L290 TraceCheckUtils]: 22: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:38:49,226 INFO L290 TraceCheckUtils]: 23: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~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; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:38:49,226 INFO L290 TraceCheckUtils]: 24: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:38:49,227 INFO L290 TraceCheckUtils]: 25: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:38:49,227 INFO L290 TraceCheckUtils]: 26: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:38:49,227 INFO L290 TraceCheckUtils]: 27: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:38:49,228 INFO L290 TraceCheckUtils]: 28: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:38:49,228 INFO L290 TraceCheckUtils]: 29: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,229 INFO L290 TraceCheckUtils]: 30: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,229 INFO L290 TraceCheckUtils]: 31: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,229 INFO L272 TraceCheckUtils]: 32: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,229 INFO L290 TraceCheckUtils]: 33: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,229 INFO L290 TraceCheckUtils]: 34: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,229 INFO L290 TraceCheckUtils]: 35: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,230 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,230 INFO L272 TraceCheckUtils]: 37: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,230 INFO L290 TraceCheckUtils]: 38: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,230 INFO L290 TraceCheckUtils]: 39: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,230 INFO L290 TraceCheckUtils]: 40: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,231 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,231 INFO L272 TraceCheckUtils]: 42: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,231 INFO L290 TraceCheckUtils]: 43: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,231 INFO L290 TraceCheckUtils]: 44: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,231 INFO L290 TraceCheckUtils]: 45: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,232 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,232 INFO L272 TraceCheckUtils]: 47: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,232 INFO L290 TraceCheckUtils]: 48: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,232 INFO L290 TraceCheckUtils]: 49: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,232 INFO L290 TraceCheckUtils]: 50: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,233 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:38:49,234 INFO L290 TraceCheckUtils]: 52: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:38:49,234 INFO L290 TraceCheckUtils]: 53: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:38:49,234 INFO L290 TraceCheckUtils]: 54: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 50);havoc #t~post8; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:38:49,235 INFO L272 TraceCheckUtils]: 55: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:38:49,235 INFO L290 TraceCheckUtils]: 56: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:38:49,235 INFO L290 TraceCheckUtils]: 57: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:49,235 INFO L290 TraceCheckUtils]: 58: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:49,236 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,236 INFO L272 TraceCheckUtils]: 60: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 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)); {196468#true} is VALID [2022-04-28 12:38:49,236 INFO L290 TraceCheckUtils]: 61: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,237 INFO L290 TraceCheckUtils]: 62: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,237 INFO L290 TraceCheckUtils]: 63: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,237 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,237 INFO L272 TraceCheckUtils]: 65: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 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)); {196468#true} is VALID [2022-04-28 12:38:49,237 INFO L290 TraceCheckUtils]: 66: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,238 INFO L290 TraceCheckUtils]: 67: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,238 INFO L290 TraceCheckUtils]: 68: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,238 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,238 INFO L272 TraceCheckUtils]: 70: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 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)); {196468#true} is VALID [2022-04-28 12:38:49,238 INFO L290 TraceCheckUtils]: 71: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,239 INFO L290 TraceCheckUtils]: 72: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,239 INFO L290 TraceCheckUtils]: 73: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,239 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,241 INFO L290 TraceCheckUtils]: 75: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,241 INFO L290 TraceCheckUtils]: 76: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,242 INFO L290 TraceCheckUtils]: 77: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,242 INFO L272 TraceCheckUtils]: 78: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~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)); {196468#true} is VALID [2022-04-28 12:38:49,242 INFO L290 TraceCheckUtils]: 79: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,242 INFO L290 TraceCheckUtils]: 80: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,242 INFO L290 TraceCheckUtils]: 81: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,243 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196468#true} {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #98#return; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,243 INFO L272 TraceCheckUtils]: 83: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {196468#true} is VALID [2022-04-28 12:38:49,243 INFO L290 TraceCheckUtils]: 84: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:38:49,243 INFO L290 TraceCheckUtils]: 85: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:49,243 INFO L290 TraceCheckUtils]: 86: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:49,244 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,245 INFO L272 TraceCheckUtils]: 88: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {196468#true} is VALID [2022-04-28 12:38:49,245 INFO L290 TraceCheckUtils]: 89: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:38:49,245 INFO L290 TraceCheckUtils]: 90: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:38:49,245 INFO L290 TraceCheckUtils]: 91: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:38:49,245 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196468#true} {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,246 INFO L272 TraceCheckUtils]: 93: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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)); {196468#true} is VALID [2022-04-28 12:38:49,246 INFO L290 TraceCheckUtils]: 94: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:38:49,246 INFO L290 TraceCheckUtils]: 95: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:49,246 INFO L290 TraceCheckUtils]: 96: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:38:49,247 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,248 INFO L290 TraceCheckUtils]: 98: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,249 INFO L290 TraceCheckUtils]: 99: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= 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; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,249 INFO L290 TraceCheckUtils]: 100: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,250 INFO L290 TraceCheckUtils]: 101: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,251 INFO L290 TraceCheckUtils]: 102: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {196794#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* 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 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:38:49,253 INFO L290 TraceCheckUtils]: 103: Hoare triple {196794#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* 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 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* 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; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,253 INFO L290 TraceCheckUtils]: 104: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,254 INFO L290 TraceCheckUtils]: 105: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,254 INFO L290 TraceCheckUtils]: 106: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !(0 != ~b~0); {196808#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:38:49,256 INFO L272 TraceCheckUtils]: 107: Hoare triple {196808#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~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)); {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:38:49,256 INFO L290 TraceCheckUtils]: 108: Hoare triple {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196816#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:38:49,256 INFO L290 TraceCheckUtils]: 109: Hoare triple {196816#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196469#false} is VALID [2022-04-28 12:38:49,256 INFO L290 TraceCheckUtils]: 110: Hoare triple {196469#false} assume !false; {196469#false} is VALID [2022-04-28 12:38:49,257 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 84 proven. 64 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 12:38:49,257 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:39:36,399 INFO L290 TraceCheckUtils]: 110: Hoare triple {196469#false} assume !false; {196469#false} is VALID [2022-04-28 12:39:36,400 INFO L290 TraceCheckUtils]: 109: Hoare triple {196816#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196469#false} is VALID [2022-04-28 12:39:36,400 INFO L290 TraceCheckUtils]: 108: Hoare triple {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196816#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:39:36,401 INFO L272 TraceCheckUtils]: 107: Hoare triple {196832#(= (+ (* 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)); {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:39:36,401 INFO L290 TraceCheckUtils]: 106: Hoare triple {196836#(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); {196832#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:39:36,402 INFO L290 TraceCheckUtils]: 105: Hoare triple {196836#(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 < 50);havoc #t~post6; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:39:36,402 INFO L290 TraceCheckUtils]: 104: Hoare triple {196836#(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; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:39:36,491 INFO L290 TraceCheckUtils]: 103: Hoare triple {196846#(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; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:39:36,492 INFO L290 TraceCheckUtils]: 102: Hoare triple {196850#(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); {196846#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,492 INFO L290 TraceCheckUtils]: 101: Hoare triple {196850#(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 < 50);havoc #t~post7; {196850#(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-28 12:39:36,492 INFO L290 TraceCheckUtils]: 100: Hoare triple {196850#(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; {196850#(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-28 12:39:36,790 INFO L290 TraceCheckUtils]: 99: Hoare triple {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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; {196850#(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-28 12:39:36,791 INFO L290 TraceCheckUtils]: 98: Hoare triple {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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); {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,792 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,792 INFO L290 TraceCheckUtils]: 96: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:39:36,792 INFO L290 TraceCheckUtils]: 95: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:39:36,792 INFO L290 TraceCheckUtils]: 94: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:39:36,793 INFO L272 TraceCheckUtils]: 93: Hoare triple {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,793 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196468#true} {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,793 INFO L290 TraceCheckUtils]: 91: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,793 INFO L290 TraceCheckUtils]: 90: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,794 INFO L290 TraceCheckUtils]: 89: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,794 INFO L272 TraceCheckUtils]: 88: Hoare triple {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,795 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~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; {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,795 INFO L290 TraceCheckUtils]: 86: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:39:36,795 INFO L290 TraceCheckUtils]: 85: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:39:36,796 INFO L290 TraceCheckUtils]: 84: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:39:36,796 INFO L272 TraceCheckUtils]: 83: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~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)); {196468#true} is VALID [2022-04-28 12:39:36,796 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196468#true} {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~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; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,796 INFO L290 TraceCheckUtils]: 81: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,797 INFO L290 TraceCheckUtils]: 80: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,797 INFO L290 TraceCheckUtils]: 79: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,797 INFO L272 TraceCheckUtils]: 78: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~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)); {196468#true} is VALID [2022-04-28 12:39:36,797 INFO L290 TraceCheckUtils]: 77: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~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 < 50);havoc #t~post8; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,798 INFO L290 TraceCheckUtils]: 76: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~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; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,865 INFO L290 TraceCheckUtils]: 75: Hoare triple {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~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; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (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_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:39:36,866 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196468#true} {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,866 INFO L290 TraceCheckUtils]: 73: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,866 INFO L290 TraceCheckUtils]: 72: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,867 INFO L290 TraceCheckUtils]: 71: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,867 INFO L272 TraceCheckUtils]: 70: Hoare triple {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~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)); {196468#true} is VALID [2022-04-28 12:39:36,867 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196468#true} {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,867 INFO L290 TraceCheckUtils]: 68: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,867 INFO L290 TraceCheckUtils]: 67: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,868 INFO L290 TraceCheckUtils]: 66: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,868 INFO L272 TraceCheckUtils]: 65: Hoare triple {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~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)); {196468#true} is VALID [2022-04-28 12:39:36,868 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196468#true} {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #100#return; {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,868 INFO L290 TraceCheckUtils]: 63: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,868 INFO L290 TraceCheckUtils]: 62: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,869 INFO L290 TraceCheckUtils]: 61: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,869 INFO L272 TraceCheckUtils]: 60: Hoare triple {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~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)); {196468#true} is VALID [2022-04-28 12:39:36,870 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196985#(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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #98#return; {196936#(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_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,870 INFO L290 TraceCheckUtils]: 58: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:39:36,870 INFO L290 TraceCheckUtils]: 57: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:39:36,871 INFO L290 TraceCheckUtils]: 56: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:39:36,871 INFO L272 TraceCheckUtils]: 55: Hoare triple {196985#(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_~v~0 2) main_~b~0) main_~c~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)); {196468#true} is VALID [2022-04-28 12:39:36,871 INFO L290 TraceCheckUtils]: 54: Hoare triple {196985#(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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(#t~post8 < 50);havoc #t~post8; {196985#(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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,872 INFO L290 TraceCheckUtils]: 53: Hoare triple {196985#(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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196985#(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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,905 INFO L290 TraceCheckUtils]: 52: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196985#(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_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 12:39:36,906 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #104#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,906 INFO L290 TraceCheckUtils]: 50: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,907 INFO L290 TraceCheckUtils]: 49: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,907 INFO L290 TraceCheckUtils]: 48: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,907 INFO L272 TraceCheckUtils]: 47: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,907 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #102#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,907 INFO L290 TraceCheckUtils]: 45: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,908 INFO L290 TraceCheckUtils]: 44: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,908 INFO L290 TraceCheckUtils]: 43: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,908 INFO L272 TraceCheckUtils]: 42: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,908 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #100#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,909 INFO L290 TraceCheckUtils]: 40: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,909 INFO L290 TraceCheckUtils]: 39: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,909 INFO L290 TraceCheckUtils]: 38: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,909 INFO L272 TraceCheckUtils]: 37: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,915 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #98#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,915 INFO L290 TraceCheckUtils]: 35: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,915 INFO L290 TraceCheckUtils]: 34: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,915 INFO L290 TraceCheckUtils]: 33: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,915 INFO L272 TraceCheckUtils]: 32: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,916 INFO L290 TraceCheckUtils]: 31: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(#t~post8 < 50);havoc #t~post8; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,917 INFO L290 TraceCheckUtils]: 30: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,918 INFO L290 TraceCheckUtils]: 29: Hoare triple {197077#(or (<= (* 5 main_~b~0) 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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* 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_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 12:39:36,918 INFO L290 TraceCheckUtils]: 28: Hoare triple {197077#(or (<= (* 5 main_~b~0) 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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(#t~post7 < 50);havoc #t~post7; {197077#(or (<= (* 5 main_~b~0) 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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 12:39:36,919 INFO L290 TraceCheckUtils]: 27: Hoare triple {197077#(or (<= (* 5 main_~b~0) 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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {197077#(or (<= (* 5 main_~b~0) 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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 26: Hoare triple {196468#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {197077#(or (<= (* 5 main_~b~0) 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)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 25: Hoare triple {196468#true} assume !!(#t~post6 < 50);havoc #t~post6; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 24: Hoare triple {196468#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 23: Hoare triple {196468#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; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 22: Hoare triple {196468#true} assume !(~c~0 >= ~b~0); {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 21: Hoare triple {196468#true} assume !!(#t~post7 < 50);havoc #t~post7; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 20: Hoare triple {196468#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 19: Hoare triple {196468#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 18: Hoare triple {196468#true} assume !!(#t~post6 < 50);havoc #t~post6; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 17: Hoare triple {196468#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 16: Hoare triple {196468#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196468#true} {196468#true} #96#return; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 14: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,922 INFO L290 TraceCheckUtils]: 13: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 12: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L272 TraceCheckUtils]: 11: Hoare triple {196468#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196468#true} {196468#true} #94#return; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 9: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 8: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 7: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L272 TraceCheckUtils]: 6: Hoare triple {196468#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {196468#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; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L272 TraceCheckUtils]: 4: Hoare triple {196468#true} call #t~ret9 := main(); {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196468#true} {196468#true} #108#return; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 2: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L290 TraceCheckUtils]: 1: Hoare triple {196468#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; {196468#true} is VALID [2022-04-28 12:39:36,923 INFO L272 TraceCheckUtils]: 0: Hoare triple {196468#true} call ULTIMATE.init(); {196468#true} is VALID [2022-04-28 12:39:36,924 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 97 proven. 45 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-28 12:39:36,924 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:39:36,924 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1349846827] [2022-04-28 12:39:36,924 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:39:36,924 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1181066371] [2022-04-28 12:39:36,924 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1181066371] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:39:36,924 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:39:36,924 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-28 12:39:36,925 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:39:36,925 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [210533076] [2022-04-28 12:39:36,925 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [210533076] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:39:36,925 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:39:36,925 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 12:39:36,925 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1199358801] [2022-04-28 12:39:36,925 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:39:36,925 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 12:39:36,925 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:39:36,925 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 12:39:37,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:39:37,049 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 12:39:37,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:39:37,050 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 12:39:37,050 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=952, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 12:39:37,050 INFO L87 Difference]: Start difference. First operand 2071 states and 2721 transitions. Second operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 12:39:51,431 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:39:51,431 INFO L93 Difference]: Finished difference Result 2221 states and 2903 transitions. [2022-04-28 12:39:51,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 12:39:51,431 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 12:39:51,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:39:51,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 12:39:51,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 12:39:51,433 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 12:39:51,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 12:39:51,435 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 215 transitions. [2022-04-28 12:39:51,750 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:39:51,963 INFO L225 Difference]: With dead ends: 2221 [2022-04-28 12:39:51,964 INFO L226 Difference]: Without dead ends: 2218 [2022-04-28 12:39:51,964 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 230 GetRequests, 188 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 440 ImplicationChecksByTransitivity, 3.3s TimeCoverageRelationStatistics Valid=274, Invalid=1532, Unknown=0, NotChecked=0, Total=1806 [2022-04-28 12:39:51,981 INFO L413 NwaCegarLoop]: 81 mSDtfsCounter, 140 mSDsluCounter, 694 mSDsCounter, 0 mSdLazyCounter, 1446 mSolverCounterSat, 99 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 775 SdHoareTripleChecker+Invalid, 1545 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 99 IncrementalHoareTripleChecker+Valid, 1446 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.5s IncrementalHoareTripleChecker+Time [2022-04-28 12:39:51,981 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [164 Valid, 775 Invalid, 1545 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [99 Valid, 1446 Invalid, 0 Unknown, 0 Unchecked, 3.5s Time] [2022-04-28 12:39:51,983 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2218 states. [2022-04-28 12:39:55,943 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2218 to 2137. [2022-04-28 12:39:55,944 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:39:55,946 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 12:39:55,947 INFO L74 IsIncluded]: Start isIncluded. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 12:39:55,948 INFO L87 Difference]: Start difference. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 12:39:56,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:39:56,088 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 12:39:56,088 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 12:39:56,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:39:56,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:39:56,093 INFO L74 IsIncluded]: Start isIncluded. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 12:39:56,094 INFO L87 Difference]: Start difference. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 12:39:56,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:39:56,238 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 12:39:56,238 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 12:39:56,241 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:39:56,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:39:56,241 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:39:56,241 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:39:56,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 12:39:56,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2137 states to 2137 states and 2784 transitions. [2022-04-28 12:39:56,468 INFO L78 Accepts]: Start accepts. Automaton has 2137 states and 2784 transitions. Word has length 111 [2022-04-28 12:39:56,468 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:39:56,468 INFO L495 AbstractCegarLoop]: Abstraction has 2137 states and 2784 transitions. [2022-04-28 12:39:56,469 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 12:39:56,469 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2137 states and 2784 transitions. [2022-04-28 12:40:05,018 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2784 edges. 2784 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:40:05,018 INFO L276 IsEmpty]: Start isEmpty. Operand 2137 states and 2784 transitions. [2022-04-28 12:40:05,019 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-28 12:40:05,019 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:40:05,020 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:40:05,042 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-28 12:40:05,220 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:40:05,220 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:40:05,220 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:40:05,220 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 7 times [2022-04-28 12:40:05,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:40:05,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1734908275] [2022-04-28 12:40:05,221 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:40:05,221 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 8 times [2022-04-28 12:40:05,221 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:40:05,221 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [341365797] [2022-04-28 12:40:05,221 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:40:05,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:40:05,236 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:40:05,236 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [81626492] [2022-04-28 12:40:05,236 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:40:05,236 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:40:05,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:40:05,237 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:40:05,238 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-28 12:40:05,304 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:40:05,304 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:40:05,306 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-28 12:40:05,345 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:40:05,347 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:40:29,895 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:40:46,173 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:40:46,201 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:40:46,419 INFO L272 TraceCheckUtils]: 0: Hoare triple {210337#true} call ULTIMATE.init(); {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L290 TraceCheckUtils]: 1: Hoare triple {210337#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; {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L290 TraceCheckUtils]: 2: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210337#true} {210337#true} #108#return; {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L272 TraceCheckUtils]: 4: Hoare triple {210337#true} call #t~ret9 := main(); {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {210337#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; {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L272 TraceCheckUtils]: 6: Hoare triple {210337#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:46,419 INFO L290 TraceCheckUtils]: 7: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L290 TraceCheckUtils]: 8: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L290 TraceCheckUtils]: 9: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210337#true} {210337#true} #94#return; {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L272 TraceCheckUtils]: 11: Hoare triple {210337#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L290 TraceCheckUtils]: 12: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L290 TraceCheckUtils]: 13: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L290 TraceCheckUtils]: 14: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210337#true} {210337#true} #96#return; {210337#true} is VALID [2022-04-28 12:40:46,420 INFO L290 TraceCheckUtils]: 16: Hoare triple {210337#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:46,421 INFO L290 TraceCheckUtils]: 17: Hoare triple {210390#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:46,421 INFO L290 TraceCheckUtils]: 18: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:46,421 INFO L290 TraceCheckUtils]: 19: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:46,422 INFO L290 TraceCheckUtils]: 20: Hoare triple {210400#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:46,422 INFO L290 TraceCheckUtils]: 21: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:46,423 INFO L290 TraceCheckUtils]: 22: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:46,423 INFO L290 TraceCheckUtils]: 23: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,423 INFO L290 TraceCheckUtils]: 24: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,424 INFO L290 TraceCheckUtils]: 25: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,424 INFO L290 TraceCheckUtils]: 26: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,425 INFO L290 TraceCheckUtils]: 27: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,425 INFO L290 TraceCheckUtils]: 28: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,425 INFO L290 TraceCheckUtils]: 29: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,426 INFO L290 TraceCheckUtils]: 30: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,426 INFO L290 TraceCheckUtils]: 31: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post8 < 50);havoc #t~post8; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:40:46,426 INFO L272 TraceCheckUtils]: 32: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:46,426 INFO L290 TraceCheckUtils]: 33: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:40:46,427 INFO L290 TraceCheckUtils]: 34: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:46,427 INFO L290 TraceCheckUtils]: 35: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:46,428 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #98#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:46,428 INFO L272 TraceCheckUtils]: 37: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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)); {210337#true} is VALID [2022-04-28 12:40:46,428 INFO L290 TraceCheckUtils]: 38: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:46,428 INFO L290 TraceCheckUtils]: 39: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:46,428 INFO L290 TraceCheckUtils]: 40: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:46,429 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:46,429 INFO L272 TraceCheckUtils]: 42: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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)); {210337#true} is VALID [2022-04-28 12:40:46,429 INFO L290 TraceCheckUtils]: 43: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:46,429 INFO L290 TraceCheckUtils]: 44: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:46,429 INFO L290 TraceCheckUtils]: 45: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:46,430 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:46,430 INFO L272 TraceCheckUtils]: 47: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~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)); {210337#true} is VALID [2022-04-28 12:40:46,430 INFO L290 TraceCheckUtils]: 48: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:46,430 INFO L290 TraceCheckUtils]: 49: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:46,430 INFO L290 TraceCheckUtils]: 50: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:46,431 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:46,431 INFO L290 TraceCheckUtils]: 52: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:46,435 INFO L290 TraceCheckUtils]: 53: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= 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; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:40:46,435 INFO L290 TraceCheckUtils]: 54: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:40:46,436 INFO L290 TraceCheckUtils]: 55: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 50);havoc #t~post7; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:40:46,436 INFO L290 TraceCheckUtils]: 56: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:40:48,439 WARN L290 TraceCheckUtils]: 57: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is UNKNOWN [2022-04-28 12:40:48,442 INFO L290 TraceCheckUtils]: 58: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,444 INFO L290 TraceCheckUtils]: 59: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,445 INFO L290 TraceCheckUtils]: 60: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,446 INFO L290 TraceCheckUtils]: 61: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,448 INFO L290 TraceCheckUtils]: 62: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,449 INFO L290 TraceCheckUtils]: 63: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,451 INFO L290 TraceCheckUtils]: 64: Hoare triple {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,452 INFO L290 TraceCheckUtils]: 65: Hoare triple {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post8 < 50);havoc #t~post8; {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:40:48,452 INFO L272 TraceCheckUtils]: 66: Hoare triple {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:48,452 INFO L290 TraceCheckUtils]: 67: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:40:48,453 INFO L290 TraceCheckUtils]: 68: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:48,453 INFO L290 TraceCheckUtils]: 69: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:48,454 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210542#(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) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #98#return; {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:48,454 INFO L272 TraceCheckUtils]: 71: Hoare triple {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:48,454 INFO L290 TraceCheckUtils]: 72: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:40:48,455 INFO L290 TraceCheckUtils]: 73: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:48,455 INFO L290 TraceCheckUtils]: 74: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:48,456 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #100#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:48,456 INFO L272 TraceCheckUtils]: 76: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:48,456 INFO L290 TraceCheckUtils]: 77: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:48,456 INFO L290 TraceCheckUtils]: 78: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:48,456 INFO L290 TraceCheckUtils]: 79: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:48,457 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210337#true} {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #102#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:48,457 INFO L272 TraceCheckUtils]: 81: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:40:48,457 INFO L290 TraceCheckUtils]: 82: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:40:48,457 INFO L290 TraceCheckUtils]: 83: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:40:48,457 INFO L290 TraceCheckUtils]: 84: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:40:48,458 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210337#true} {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #104#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:48,460 INFO L290 TraceCheckUtils]: 86: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:40:48,461 INFO L290 TraceCheckUtils]: 87: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:48,463 INFO L290 TraceCheckUtils]: 88: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= 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; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:48,465 INFO L290 TraceCheckUtils]: 89: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:48,467 INFO L290 TraceCheckUtils]: 90: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:40:48,475 INFO L290 TraceCheckUtils]: 91: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= 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; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,477 INFO L290 TraceCheckUtils]: 92: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,478 INFO L290 TraceCheckUtils]: 93: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post6 < 50);havoc #t~post6; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,479 INFO L290 TraceCheckUtils]: 94: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,480 INFO L290 TraceCheckUtils]: 95: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,481 INFO L290 TraceCheckUtils]: 96: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post7 < 50);havoc #t~post7; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,482 INFO L290 TraceCheckUtils]: 97: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~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; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,483 INFO L290 TraceCheckUtils]: 98: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,484 INFO L290 TraceCheckUtils]: 99: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post8 < 50);havoc #t~post8; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 12:40:48,485 INFO L272 TraceCheckUtils]: 100: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~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)); {210337#true} is VALID [2022-04-28 12:40:48,485 INFO L290 TraceCheckUtils]: 101: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:40:48,485 INFO L290 TraceCheckUtils]: 102: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:48,485 INFO L290 TraceCheckUtils]: 103: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:40:48,489 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #98#return; {210670#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:40:48,490 INFO L272 TraceCheckUtils]: 105: Hoare triple {210670#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:40:48,490 INFO L290 TraceCheckUtils]: 106: Hoare triple {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210678#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:40:48,490 INFO L290 TraceCheckUtils]: 107: Hoare triple {210678#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210338#false} is VALID [2022-04-28 12:40:48,490 INFO L290 TraceCheckUtils]: 108: Hoare triple {210338#false} assume !false; {210338#false} is VALID [2022-04-28 12:40:48,491 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 47 proven. 113 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 12:40:48,491 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:41:20,893 INFO L290 TraceCheckUtils]: 108: Hoare triple {210338#false} assume !false; {210338#false} is VALID [2022-04-28 12:41:20,893 INFO L290 TraceCheckUtils]: 107: Hoare triple {210678#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210338#false} is VALID [2022-04-28 12:41:20,894 INFO L290 TraceCheckUtils]: 106: Hoare triple {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210678#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:41:20,894 INFO L272 TraceCheckUtils]: 105: Hoare triple {210694#(= 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)); {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:41:20,895 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210698#(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; {210694#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:41:20,895 INFO L290 TraceCheckUtils]: 103: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:41:20,896 INFO L290 TraceCheckUtils]: 102: Hoare triple {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:41:20,896 INFO L290 TraceCheckUtils]: 101: Hoare triple {210337#true} ~cond := #in~cond; {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:41:20,896 INFO L272 TraceCheckUtils]: 100: Hoare triple {210698#(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)); {210337#true} is VALID [2022-04-28 12:41:20,896 INFO L290 TraceCheckUtils]: 99: Hoare triple {210698#(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 < 50);havoc #t~post8; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,897 INFO L290 TraceCheckUtils]: 98: Hoare triple {210698#(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; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,897 INFO L290 TraceCheckUtils]: 97: Hoare triple {210698#(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; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,898 INFO L290 TraceCheckUtils]: 96: Hoare triple {210698#(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 < 50);havoc #t~post7; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,898 INFO L290 TraceCheckUtils]: 95: Hoare triple {210698#(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; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,898 INFO L290 TraceCheckUtils]: 94: Hoare triple {210698#(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; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,899 INFO L290 TraceCheckUtils]: 93: Hoare triple {210698#(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 < 50);havoc #t~post6; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,899 INFO L290 TraceCheckUtils]: 92: Hoare triple {210698#(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; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,917 INFO L290 TraceCheckUtils]: 91: Hoare triple {210739#(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; {210698#(or (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 12:41:20,917 INFO L290 TraceCheckUtils]: 90: Hoare triple {210739#(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); {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,918 INFO L290 TraceCheckUtils]: 89: Hoare triple {210739#(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 < 50);havoc #t~post7; {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,918 INFO L290 TraceCheckUtils]: 88: Hoare triple {210739#(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; {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,923 INFO L290 TraceCheckUtils]: 87: Hoare triple {210752#(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; {210739#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,924 INFO L290 TraceCheckUtils]: 86: Hoare triple {210752#(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)))))} assume !(~c~0 >= 2 * ~v~0); {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,924 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210337#true} {210752#(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)))))} #104#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,924 INFO L290 TraceCheckUtils]: 84: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,924 INFO L290 TraceCheckUtils]: 83: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,925 INFO L290 TraceCheckUtils]: 82: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,925 INFO L272 TraceCheckUtils]: 81: Hoare triple {210752#(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)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,925 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210337#true} {210752#(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)))))} #102#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,925 INFO L290 TraceCheckUtils]: 79: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,925 INFO L290 TraceCheckUtils]: 78: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,925 INFO L290 TraceCheckUtils]: 77: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,926 INFO L272 TraceCheckUtils]: 76: Hoare triple {210752#(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)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,926 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210337#true} {210752#(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)))))} #100#return; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,926 INFO L290 TraceCheckUtils]: 74: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,926 INFO L290 TraceCheckUtils]: 73: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,926 INFO L290 TraceCheckUtils]: 72: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,926 INFO L272 TraceCheckUtils]: 71: Hoare triple {210752#(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)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,927 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210804#(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_~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; {210752#(or (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,927 INFO L290 TraceCheckUtils]: 69: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:41:20,928 INFO L290 TraceCheckUtils]: 68: Hoare triple {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:41:20,928 INFO L290 TraceCheckUtils]: 67: Hoare triple {210337#true} ~cond := #in~cond; {210708#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:41:20,928 INFO L272 TraceCheckUtils]: 66: Hoare triple {210804#(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_~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)); {210337#true} is VALID [2022-04-28 12:41:20,929 INFO L290 TraceCheckUtils]: 65: Hoare triple {210804#(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_~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 < 50);havoc #t~post8; {210804#(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_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,929 INFO L290 TraceCheckUtils]: 64: Hoare triple {210804#(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_~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; {210804#(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_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,930 INFO L290 TraceCheckUtils]: 63: Hoare triple {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~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; {210804#(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_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,930 INFO L290 TraceCheckUtils]: 62: Hoare triple {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~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 < 50);havoc #t~post7; {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,931 INFO L290 TraceCheckUtils]: 61: Hoare triple {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~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; {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,933 INFO L290 TraceCheckUtils]: 60: Hoare triple {210337#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210826#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ main_~c~0 (* (- 1) main_~b~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 12:41:20,933 INFO L290 TraceCheckUtils]: 59: Hoare triple {210337#true} assume !!(#t~post6 < 50);havoc #t~post6; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 58: Hoare triple {210337#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 57: Hoare triple {210337#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; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 56: Hoare triple {210337#true} assume !(~c~0 >= ~b~0); {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 55: Hoare triple {210337#true} assume !!(#t~post7 < 50);havoc #t~post7; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 54: Hoare triple {210337#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 53: Hoare triple {210337#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 52: Hoare triple {210337#true} assume !(~c~0 >= 2 * ~v~0); {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210337#true} {210337#true} #104#return; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 50: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 49: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 48: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L272 TraceCheckUtils]: 47: Hoare triple {210337#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210337#true} {210337#true} #102#return; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 45: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 44: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,934 INFO L290 TraceCheckUtils]: 43: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L272 TraceCheckUtils]: 42: Hoare triple {210337#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210337#true} {210337#true} #100#return; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 40: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 39: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 38: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L272 TraceCheckUtils]: 37: Hoare triple {210337#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210337#true} {210337#true} #98#return; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 35: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 34: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 33: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L272 TraceCheckUtils]: 32: Hoare triple {210337#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 31: Hoare triple {210337#true} assume !!(#t~post8 < 50);havoc #t~post8; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 30: Hoare triple {210337#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210337#true} is VALID [2022-04-28 12:41:20,935 INFO L290 TraceCheckUtils]: 29: Hoare triple {210337#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 28: Hoare triple {210337#true} assume !!(#t~post7 < 50);havoc #t~post7; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 27: Hoare triple {210337#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 26: Hoare triple {210337#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 25: Hoare triple {210337#true} assume !!(#t~post6 < 50);havoc #t~post6; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 24: Hoare triple {210337#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 23: Hoare triple {210337#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; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 22: Hoare triple {210337#true} assume !(~c~0 >= ~b~0); {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 21: Hoare triple {210337#true} assume !!(#t~post7 < 50);havoc #t~post7; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 20: Hoare triple {210337#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 19: Hoare triple {210337#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 18: Hoare triple {210337#true} assume !!(#t~post6 < 50);havoc #t~post6; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 17: Hoare triple {210337#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {210337#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210337#true} {210337#true} #96#return; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 12: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L272 TraceCheckUtils]: 11: Hoare triple {210337#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210337#true} {210337#true} #94#return; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 9: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 8: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 7: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L272 TraceCheckUtils]: 6: Hoare triple {210337#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 5: Hoare triple {210337#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; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L272 TraceCheckUtils]: 4: Hoare triple {210337#true} call #t~ret9 := main(); {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210337#true} {210337#true} #108#return; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 2: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L290 TraceCheckUtils]: 1: Hoare triple {210337#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; {210337#true} is VALID [2022-04-28 12:41:20,937 INFO L272 TraceCheckUtils]: 0: Hoare triple {210337#true} call ULTIMATE.init(); {210337#true} is VALID [2022-04-28 12:41:20,938 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 102 proven. 21 refuted. 0 times theorem prover too weak. 125 trivial. 0 not checked. [2022-04-28 12:41:20,938 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:41:20,938 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [341365797] [2022-04-28 12:41:20,938 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:41:20,938 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [81626492] [2022-04-28 12:41:20,938 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [81626492] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:41:20,938 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:41:20,938 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 12] total 28 [2022-04-28 12:41:20,938 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:41:20,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1734908275] [2022-04-28 12:41:20,940 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1734908275] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:41:20,940 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:41:20,940 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 12:41:20,940 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [307278345] [2022-04-28 12:41:20,940 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:41:20,941 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-28 12:41:20,941 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:41:20,941 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 12:41:23,335 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 84 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 12:41:23,335 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 12:41:23,335 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:41:23,336 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 12:41:23,336 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=100, Invalid=656, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:41:23,336 INFO L87 Difference]: Start difference. First operand 2137 states and 2784 transitions. Second operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 12:41:27,393 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-28 12:41:33,436 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-28 12:41:37,023 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.64s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 12:41:47,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:41:47,833 INFO L93 Difference]: Finished difference Result 2272 states and 2960 transitions. [2022-04-28 12:41:47,834 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 12:41:47,834 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) Word has length 109 [2022-04-28 12:41:47,834 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:41:47,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 12:41:47,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 229 transitions. [2022-04-28 12:41:47,836 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 12:41:47,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 229 transitions. [2022-04-28 12:41:47,838 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 229 transitions. [2022-04-28 12:41:50,527 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 229 edges. 228 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-28 12:41:50,751 INFO L225 Difference]: With dead ends: 2272 [2022-04-28 12:41:50,751 INFO L226 Difference]: Without dead ends: 2270 [2022-04-28 12:41:50,756 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 224 GetRequests, 188 SyntacticMatches, 3 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 216 ImplicationChecksByTransitivity, 1.6s TimeCoverageRelationStatistics Valid=156, Invalid=1034, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 12:41:50,756 INFO L413 NwaCegarLoop]: 79 mSDtfsCounter, 120 mSDsluCounter, 702 mSDsCounter, 0 mSdLazyCounter, 1190 mSolverCounterSat, 64 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 149 SdHoareTripleChecker+Valid, 781 SdHoareTripleChecker+Invalid, 1256 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 64 IncrementalHoareTripleChecker+Valid, 1190 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.5s IncrementalHoareTripleChecker+Time [2022-04-28 12:41:50,756 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [149 Valid, 781 Invalid, 1256 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [64 Valid, 1190 Invalid, 2 Unknown, 0 Unchecked, 8.5s Time] [2022-04-28 12:41:50,757 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2270 states. [2022-04-28 12:41:57,338 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2270 to 2212. [2022-04-28 12:41:57,338 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:41:57,340 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 12:41:57,342 INFO L74 IsIncluded]: Start isIncluded. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 12:41:57,343 INFO L87 Difference]: Start difference. First operand 2270 states. Second operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 12:41:57,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:41:57,488 INFO L93 Difference]: Finished difference Result 2270 states and 2958 transitions. [2022-04-28 12:41:57,488 INFO L276 IsEmpty]: Start isEmpty. Operand 2270 states and 2958 transitions. [2022-04-28 12:41:57,490 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:41:57,490 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:41:57,492 INFO L74 IsIncluded]: Start isIncluded. First operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) Second operand 2270 states. [2022-04-28 12:41:57,493 INFO L87 Difference]: Start difference. First operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) Second operand 2270 states. [2022-04-28 12:41:57,641 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:41:57,641 INFO L93 Difference]: Finished difference Result 2270 states and 2958 transitions. [2022-04-28 12:41:57,641 INFO L276 IsEmpty]: Start isEmpty. Operand 2270 states and 2958 transitions. [2022-04-28 12:41:57,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:41:57,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:41:57,644 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:41:57,644 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:41:57,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2212 states, 1537 states have (on average 1.2335718932986337) internal successors, (1896), 1562 states have internal predecessors, (1896), 497 states have call successors, (497), 178 states have call predecessors, (497), 177 states have return successors, (492), 471 states have call predecessors, (492), 492 states have call successors, (492) [2022-04-28 12:41:57,892 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2212 states to 2212 states and 2885 transitions. [2022-04-28 12:41:57,893 INFO L78 Accepts]: Start accepts. Automaton has 2212 states and 2885 transitions. Word has length 109 [2022-04-28 12:41:57,893 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:41:57,893 INFO L495 AbstractCegarLoop]: Abstraction has 2212 states and 2885 transitions. [2022-04-28 12:41:57,893 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 19 states have (on average 3.1052631578947367) internal successors, (59), 18 states have internal predecessors, (59), 8 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 5 states have call predecessors, (12), 7 states have call successors, (12) [2022-04-28 12:41:57,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2212 states and 2885 transitions. [2022-04-28 12:42:07,518 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2885 edges. 2885 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:42:07,518 INFO L276 IsEmpty]: Start isEmpty. Operand 2212 states and 2885 transitions. [2022-04-28 12:42:07,519 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-04-28 12:42:07,519 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:42:07,519 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 7, 6, 5, 4, 4, 4, 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, 1] [2022-04-28 12:42:07,544 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-28 12:42:07,720 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable42,43 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:42:07,720 INFO L420 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:42:07,720 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:42:07,720 INFO L85 PathProgramCache]: Analyzing trace with hash 1720519159, now seen corresponding path program 9 times [2022-04-28 12:42:07,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:42:07,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1559456125] [2022-04-28 12:42:07,721 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:42:07,721 INFO L85 PathProgramCache]: Analyzing trace with hash 1720519159, now seen corresponding path program 10 times [2022-04-28 12:42:07,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:42:07,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1790848801] [2022-04-28 12:42:07,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:42:07,721 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:42:07,733 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:42:07,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [740844492] [2022-04-28 12:42:07,733 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:42:07,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:42:07,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:42:07,734 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:42:07,735 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-04-28 12:42:07,805 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:42:07,806 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:42:07,807 INFO L263 TraceCheckSpWp]: Trace formula consists of 349 conjuncts, 29 conjunts are in the unsatisfiable core [2022-04-28 12:42:07,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:42:07,831 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:42:08,401 INFO L272 TraceCheckUtils]: 0: Hoare triple {224540#true} call ULTIMATE.init(); {224540#true} is VALID [2022-04-28 12:42:08,402 INFO L290 TraceCheckUtils]: 1: Hoare triple {224540#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; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,402 INFO L290 TraceCheckUtils]: 2: Hoare triple {224548#(<= ~counter~0 0)} assume true; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,402 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {224548#(<= ~counter~0 0)} {224540#true} #108#return; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,402 INFO L272 TraceCheckUtils]: 4: Hoare triple {224548#(<= ~counter~0 0)} call #t~ret9 := main(); {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,403 INFO L290 TraceCheckUtils]: 5: Hoare triple {224548#(<= ~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; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,403 INFO L272 TraceCheckUtils]: 6: Hoare triple {224548#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,403 INFO L290 TraceCheckUtils]: 7: Hoare triple {224548#(<= ~counter~0 0)} ~cond := #in~cond; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,404 INFO L290 TraceCheckUtils]: 8: Hoare triple {224548#(<= ~counter~0 0)} assume !(0 == ~cond); {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,404 INFO L290 TraceCheckUtils]: 9: Hoare triple {224548#(<= ~counter~0 0)} assume true; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,404 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {224548#(<= ~counter~0 0)} {224548#(<= ~counter~0 0)} #94#return; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,405 INFO L272 TraceCheckUtils]: 11: Hoare triple {224548#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,405 INFO L290 TraceCheckUtils]: 12: Hoare triple {224548#(<= ~counter~0 0)} ~cond := #in~cond; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,405 INFO L290 TraceCheckUtils]: 13: Hoare triple {224548#(<= ~counter~0 0)} assume !(0 == ~cond); {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,405 INFO L290 TraceCheckUtils]: 14: Hoare triple {224548#(<= ~counter~0 0)} assume true; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,406 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {224548#(<= ~counter~0 0)} {224548#(<= ~counter~0 0)} #96#return; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,406 INFO L290 TraceCheckUtils]: 16: Hoare triple {224548#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {224548#(<= ~counter~0 0)} is VALID [2022-04-28 12:42:08,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {224548#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224597#(<= ~counter~0 1)} is VALID [2022-04-28 12:42:08,409 INFO L290 TraceCheckUtils]: 18: Hoare triple {224597#(<= ~counter~0 1)} assume !!(#t~post6 < 50);havoc #t~post6; {224597#(<= ~counter~0 1)} is VALID [2022-04-28 12:42:08,409 INFO L290 TraceCheckUtils]: 19: Hoare triple {224597#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224597#(<= ~counter~0 1)} is VALID [2022-04-28 12:42:08,411 INFO L290 TraceCheckUtils]: 20: Hoare triple {224597#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224607#(<= ~counter~0 2)} is VALID [2022-04-28 12:42:08,411 INFO L290 TraceCheckUtils]: 21: Hoare triple {224607#(<= ~counter~0 2)} assume !!(#t~post7 < 50);havoc #t~post7; {224607#(<= ~counter~0 2)} is VALID [2022-04-28 12:42:08,411 INFO L290 TraceCheckUtils]: 22: Hoare triple {224607#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {224607#(<= ~counter~0 2)} is VALID [2022-04-28 12:42:08,411 INFO L290 TraceCheckUtils]: 23: Hoare triple {224607#(<= ~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; {224607#(<= ~counter~0 2)} is VALID [2022-04-28 12:42:08,412 INFO L290 TraceCheckUtils]: 24: Hoare triple {224607#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224620#(<= ~counter~0 3)} is VALID [2022-04-28 12:42:08,413 INFO L290 TraceCheckUtils]: 25: Hoare triple {224620#(<= ~counter~0 3)} assume !!(#t~post6 < 50);havoc #t~post6; {224620#(<= ~counter~0 3)} is VALID [2022-04-28 12:42:08,413 INFO L290 TraceCheckUtils]: 26: Hoare triple {224620#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224620#(<= ~counter~0 3)} is VALID [2022-04-28 12:42:08,414 INFO L290 TraceCheckUtils]: 27: Hoare triple {224620#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224630#(<= ~counter~0 4)} is VALID [2022-04-28 12:42:08,414 INFO L290 TraceCheckUtils]: 28: Hoare triple {224630#(<= ~counter~0 4)} assume !!(#t~post7 < 50);havoc #t~post7; {224630#(<= ~counter~0 4)} is VALID [2022-04-28 12:42:08,415 INFO L290 TraceCheckUtils]: 29: Hoare triple {224630#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224630#(<= ~counter~0 4)} is VALID [2022-04-28 12:42:08,416 INFO L290 TraceCheckUtils]: 30: Hoare triple {224630#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,416 INFO L290 TraceCheckUtils]: 31: Hoare triple {224640#(<= ~counter~0 5)} assume !!(#t~post8 < 50);havoc #t~post8; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,417 INFO L272 TraceCheckUtils]: 32: Hoare triple {224640#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,417 INFO L290 TraceCheckUtils]: 33: Hoare triple {224640#(<= ~counter~0 5)} ~cond := #in~cond; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,417 INFO L290 TraceCheckUtils]: 34: Hoare triple {224640#(<= ~counter~0 5)} assume !(0 == ~cond); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,417 INFO L290 TraceCheckUtils]: 35: Hoare triple {224640#(<= ~counter~0 5)} assume true; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,418 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {224640#(<= ~counter~0 5)} {224640#(<= ~counter~0 5)} #98#return; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,418 INFO L272 TraceCheckUtils]: 37: Hoare triple {224640#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,419 INFO L290 TraceCheckUtils]: 38: Hoare triple {224640#(<= ~counter~0 5)} ~cond := #in~cond; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,419 INFO L290 TraceCheckUtils]: 39: Hoare triple {224640#(<= ~counter~0 5)} assume !(0 == ~cond); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,419 INFO L290 TraceCheckUtils]: 40: Hoare triple {224640#(<= ~counter~0 5)} assume true; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,420 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {224640#(<= ~counter~0 5)} {224640#(<= ~counter~0 5)} #100#return; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,420 INFO L272 TraceCheckUtils]: 42: Hoare triple {224640#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,420 INFO L290 TraceCheckUtils]: 43: Hoare triple {224640#(<= ~counter~0 5)} ~cond := #in~cond; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,421 INFO L290 TraceCheckUtils]: 44: Hoare triple {224640#(<= ~counter~0 5)} assume !(0 == ~cond); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,421 INFO L290 TraceCheckUtils]: 45: Hoare triple {224640#(<= ~counter~0 5)} assume true; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,421 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {224640#(<= ~counter~0 5)} {224640#(<= ~counter~0 5)} #102#return; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,422 INFO L272 TraceCheckUtils]: 47: Hoare triple {224640#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,422 INFO L290 TraceCheckUtils]: 48: Hoare triple {224640#(<= ~counter~0 5)} ~cond := #in~cond; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,422 INFO L290 TraceCheckUtils]: 49: Hoare triple {224640#(<= ~counter~0 5)} assume !(0 == ~cond); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,423 INFO L290 TraceCheckUtils]: 50: Hoare triple {224640#(<= ~counter~0 5)} assume true; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,423 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {224640#(<= ~counter~0 5)} {224640#(<= ~counter~0 5)} #104#return; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,423 INFO L290 TraceCheckUtils]: 52: Hoare triple {224640#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,424 INFO L290 TraceCheckUtils]: 53: Hoare triple {224640#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224640#(<= ~counter~0 5)} is VALID [2022-04-28 12:42:08,425 INFO L290 TraceCheckUtils]: 54: Hoare triple {224640#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224713#(<= ~counter~0 6)} is VALID [2022-04-28 12:42:08,425 INFO L290 TraceCheckUtils]: 55: Hoare triple {224713#(<= ~counter~0 6)} assume !!(#t~post7 < 50);havoc #t~post7; {224713#(<= ~counter~0 6)} is VALID [2022-04-28 12:42:08,425 INFO L290 TraceCheckUtils]: 56: Hoare triple {224713#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {224713#(<= ~counter~0 6)} is VALID [2022-04-28 12:42:08,426 INFO L290 TraceCheckUtils]: 57: Hoare triple {224713#(<= ~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; {224713#(<= ~counter~0 6)} is VALID [2022-04-28 12:42:08,427 INFO L290 TraceCheckUtils]: 58: Hoare triple {224713#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224726#(<= ~counter~0 7)} is VALID [2022-04-28 12:42:08,427 INFO L290 TraceCheckUtils]: 59: Hoare triple {224726#(<= ~counter~0 7)} assume !!(#t~post6 < 50);havoc #t~post6; {224726#(<= ~counter~0 7)} is VALID [2022-04-28 12:42:08,427 INFO L290 TraceCheckUtils]: 60: Hoare triple {224726#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224726#(<= ~counter~0 7)} is VALID [2022-04-28 12:42:08,428 INFO L290 TraceCheckUtils]: 61: Hoare triple {224726#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224736#(<= ~counter~0 8)} is VALID [2022-04-28 12:42:08,429 INFO L290 TraceCheckUtils]: 62: Hoare triple {224736#(<= ~counter~0 8)} assume !!(#t~post7 < 50);havoc #t~post7; {224736#(<= ~counter~0 8)} is VALID [2022-04-28 12:42:08,429 INFO L290 TraceCheckUtils]: 63: Hoare triple {224736#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224736#(<= ~counter~0 8)} is VALID [2022-04-28 12:42:08,430 INFO L290 TraceCheckUtils]: 64: Hoare triple {224736#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,430 INFO L290 TraceCheckUtils]: 65: Hoare triple {224746#(<= ~counter~0 9)} assume !!(#t~post8 < 50);havoc #t~post8; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,431 INFO L272 TraceCheckUtils]: 66: Hoare triple {224746#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,431 INFO L290 TraceCheckUtils]: 67: Hoare triple {224746#(<= ~counter~0 9)} ~cond := #in~cond; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,431 INFO L290 TraceCheckUtils]: 68: Hoare triple {224746#(<= ~counter~0 9)} assume !(0 == ~cond); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,432 INFO L290 TraceCheckUtils]: 69: Hoare triple {224746#(<= ~counter~0 9)} assume true; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,432 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {224746#(<= ~counter~0 9)} {224746#(<= ~counter~0 9)} #98#return; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,433 INFO L272 TraceCheckUtils]: 71: Hoare triple {224746#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,433 INFO L290 TraceCheckUtils]: 72: Hoare triple {224746#(<= ~counter~0 9)} ~cond := #in~cond; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,433 INFO L290 TraceCheckUtils]: 73: Hoare triple {224746#(<= ~counter~0 9)} assume !(0 == ~cond); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,433 INFO L290 TraceCheckUtils]: 74: Hoare triple {224746#(<= ~counter~0 9)} assume true; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,434 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {224746#(<= ~counter~0 9)} {224746#(<= ~counter~0 9)} #100#return; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,434 INFO L272 TraceCheckUtils]: 76: Hoare triple {224746#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,435 INFO L290 TraceCheckUtils]: 77: Hoare triple {224746#(<= ~counter~0 9)} ~cond := #in~cond; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,435 INFO L290 TraceCheckUtils]: 78: Hoare triple {224746#(<= ~counter~0 9)} assume !(0 == ~cond); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,435 INFO L290 TraceCheckUtils]: 79: Hoare triple {224746#(<= ~counter~0 9)} assume true; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,436 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {224746#(<= ~counter~0 9)} {224746#(<= ~counter~0 9)} #102#return; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,436 INFO L272 TraceCheckUtils]: 81: Hoare triple {224746#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,436 INFO L290 TraceCheckUtils]: 82: Hoare triple {224746#(<= ~counter~0 9)} ~cond := #in~cond; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,437 INFO L290 TraceCheckUtils]: 83: Hoare triple {224746#(<= ~counter~0 9)} assume !(0 == ~cond); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,437 INFO L290 TraceCheckUtils]: 84: Hoare triple {224746#(<= ~counter~0 9)} assume true; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,437 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {224746#(<= ~counter~0 9)} {224746#(<= ~counter~0 9)} #104#return; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,438 INFO L290 TraceCheckUtils]: 86: Hoare triple {224746#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,438 INFO L290 TraceCheckUtils]: 87: Hoare triple {224746#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224746#(<= ~counter~0 9)} is VALID [2022-04-28 12:42:08,439 INFO L290 TraceCheckUtils]: 88: Hoare triple {224746#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224819#(<= ~counter~0 10)} is VALID [2022-04-28 12:42:08,439 INFO L290 TraceCheckUtils]: 89: Hoare triple {224819#(<= ~counter~0 10)} assume !!(#t~post7 < 50);havoc #t~post7; {224819#(<= ~counter~0 10)} is VALID [2022-04-28 12:42:08,439 INFO L290 TraceCheckUtils]: 90: Hoare triple {224819#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {224819#(<= ~counter~0 10)} is VALID [2022-04-28 12:42:08,440 INFO L290 TraceCheckUtils]: 91: Hoare triple {224819#(<= ~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; {224819#(<= ~counter~0 10)} is VALID [2022-04-28 12:42:08,441 INFO L290 TraceCheckUtils]: 92: Hoare triple {224819#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224832#(<= ~counter~0 11)} is VALID [2022-04-28 12:42:08,441 INFO L290 TraceCheckUtils]: 93: Hoare triple {224832#(<= ~counter~0 11)} assume !!(#t~post6 < 50);havoc #t~post6; {224832#(<= ~counter~0 11)} is VALID [2022-04-28 12:42:08,441 INFO L290 TraceCheckUtils]: 94: Hoare triple {224832#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224832#(<= ~counter~0 11)} is VALID [2022-04-28 12:42:08,443 INFO L290 TraceCheckUtils]: 95: Hoare triple {224832#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224842#(<= ~counter~0 12)} is VALID [2022-04-28 12:42:08,443 INFO L290 TraceCheckUtils]: 96: Hoare triple {224842#(<= ~counter~0 12)} assume !!(#t~post7 < 50);havoc #t~post7; {224842#(<= ~counter~0 12)} is VALID [2022-04-28 12:42:08,443 INFO L290 TraceCheckUtils]: 97: Hoare triple {224842#(<= ~counter~0 12)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224842#(<= ~counter~0 12)} is VALID [2022-04-28 12:42:08,443 INFO L290 TraceCheckUtils]: 98: Hoare triple {224842#(<= ~counter~0 12)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224852#(<= |main_#t~post8| 12)} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 99: Hoare triple {224852#(<= |main_#t~post8| 12)} assume !(#t~post8 < 50);havoc #t~post8; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 100: Hoare triple {224541#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 101: Hoare triple {224541#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 102: Hoare triple {224541#false} assume !(#t~post7 < 50);havoc #t~post7; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 103: Hoare triple {224541#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; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 104: Hoare triple {224541#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 105: Hoare triple {224541#false} assume !(#t~post6 < 50);havoc #t~post6; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L272 TraceCheckUtils]: 106: Hoare triple {224541#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)); {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 107: Hoare triple {224541#false} ~cond := #in~cond; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 108: Hoare triple {224541#false} assume 0 == ~cond; {224541#false} is VALID [2022-04-28 12:42:08,444 INFO L290 TraceCheckUtils]: 109: Hoare triple {224541#false} assume !false; {224541#false} is VALID [2022-04-28 12:42:08,445 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 41 proven. 142 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:42:08,445 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 109: Hoare triple {224541#false} assume !false; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 108: Hoare triple {224541#false} assume 0 == ~cond; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 107: Hoare triple {224541#false} ~cond := #in~cond; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L272 TraceCheckUtils]: 106: Hoare triple {224541#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)); {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 105: Hoare triple {224541#false} assume !(#t~post6 < 50);havoc #t~post6; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 104: Hoare triple {224541#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 103: Hoare triple {224541#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; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 102: Hoare triple {224541#false} assume !(#t~post7 < 50);havoc #t~post7; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 101: Hoare triple {224541#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224541#false} is VALID [2022-04-28 12:42:09,077 INFO L290 TraceCheckUtils]: 100: Hoare triple {224541#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224541#false} is VALID [2022-04-28 12:42:09,078 INFO L290 TraceCheckUtils]: 99: Hoare triple {224916#(< |main_#t~post8| 50)} assume !(#t~post8 < 50);havoc #t~post8; {224541#false} is VALID [2022-04-28 12:42:09,078 INFO L290 TraceCheckUtils]: 98: Hoare triple {224920#(< ~counter~0 50)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224916#(< |main_#t~post8| 50)} is VALID [2022-04-28 12:42:09,078 INFO L290 TraceCheckUtils]: 97: Hoare triple {224920#(< ~counter~0 50)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {224920#(< ~counter~0 50)} is VALID [2022-04-28 12:42:09,078 INFO L290 TraceCheckUtils]: 96: Hoare triple {224920#(< ~counter~0 50)} assume !!(#t~post7 < 50);havoc #t~post7; {224920#(< ~counter~0 50)} is VALID [2022-04-28 12:42:09,081 INFO L290 TraceCheckUtils]: 95: Hoare triple {224930#(< ~counter~0 49)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224920#(< ~counter~0 50)} is VALID [2022-04-28 12:42:09,082 INFO L290 TraceCheckUtils]: 94: Hoare triple {224930#(< ~counter~0 49)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {224930#(< ~counter~0 49)} is VALID [2022-04-28 12:42:09,082 INFO L290 TraceCheckUtils]: 93: Hoare triple {224930#(< ~counter~0 49)} assume !!(#t~post6 < 50);havoc #t~post6; {224930#(< ~counter~0 49)} is VALID [2022-04-28 12:42:09,083 INFO L290 TraceCheckUtils]: 92: Hoare triple {224940#(< ~counter~0 48)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {224930#(< ~counter~0 49)} is VALID [2022-04-28 12:42:09,083 INFO L290 TraceCheckUtils]: 91: Hoare triple {224940#(< ~counter~0 48)} ~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; {224940#(< ~counter~0 48)} is VALID [2022-04-28 12:42:09,084 INFO L290 TraceCheckUtils]: 90: Hoare triple {224940#(< ~counter~0 48)} assume !(~c~0 >= ~b~0); {224940#(< ~counter~0 48)} is VALID [2022-04-28 12:42:09,084 INFO L290 TraceCheckUtils]: 89: Hoare triple {224940#(< ~counter~0 48)} assume !!(#t~post7 < 50);havoc #t~post7; {224940#(< ~counter~0 48)} is VALID [2022-04-28 12:42:09,085 INFO L290 TraceCheckUtils]: 88: Hoare triple {224953#(< ~counter~0 47)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {224940#(< ~counter~0 48)} is VALID [2022-04-28 12:42:09,085 INFO L290 TraceCheckUtils]: 87: Hoare triple {224953#(< ~counter~0 47)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,086 INFO L290 TraceCheckUtils]: 86: Hoare triple {224953#(< ~counter~0 47)} assume !(~c~0 >= 2 * ~v~0); {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,086 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {224540#true} {224953#(< ~counter~0 47)} #104#return; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,086 INFO L290 TraceCheckUtils]: 84: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,086 INFO L290 TraceCheckUtils]: 83: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,086 INFO L290 TraceCheckUtils]: 82: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,086 INFO L272 TraceCheckUtils]: 81: Hoare triple {224953#(< ~counter~0 47)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,087 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {224540#true} {224953#(< ~counter~0 47)} #102#return; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,087 INFO L290 TraceCheckUtils]: 79: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,087 INFO L290 TraceCheckUtils]: 78: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,087 INFO L290 TraceCheckUtils]: 77: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,087 INFO L272 TraceCheckUtils]: 76: Hoare triple {224953#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,088 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {224540#true} {224953#(< ~counter~0 47)} #100#return; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,088 INFO L290 TraceCheckUtils]: 74: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,088 INFO L290 TraceCheckUtils]: 73: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,088 INFO L290 TraceCheckUtils]: 72: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,088 INFO L272 TraceCheckUtils]: 71: Hoare triple {224953#(< ~counter~0 47)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,088 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {224540#true} {224953#(< ~counter~0 47)} #98#return; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,089 INFO L290 TraceCheckUtils]: 69: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,089 INFO L290 TraceCheckUtils]: 68: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,089 INFO L290 TraceCheckUtils]: 67: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,089 INFO L272 TraceCheckUtils]: 66: Hoare triple {224953#(< ~counter~0 47)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,089 INFO L290 TraceCheckUtils]: 65: Hoare triple {224953#(< ~counter~0 47)} assume !!(#t~post8 < 50);havoc #t~post8; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,090 INFO L290 TraceCheckUtils]: 64: Hoare triple {225026#(< ~counter~0 46)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {224953#(< ~counter~0 47)} is VALID [2022-04-28 12:42:09,090 INFO L290 TraceCheckUtils]: 63: Hoare triple {225026#(< ~counter~0 46)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {225026#(< ~counter~0 46)} is VALID [2022-04-28 12:42:09,091 INFO L290 TraceCheckUtils]: 62: Hoare triple {225026#(< ~counter~0 46)} assume !!(#t~post7 < 50);havoc #t~post7; {225026#(< ~counter~0 46)} is VALID [2022-04-28 12:42:09,092 INFO L290 TraceCheckUtils]: 61: Hoare triple {225036#(< ~counter~0 45)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {225026#(< ~counter~0 46)} is VALID [2022-04-28 12:42:09,092 INFO L290 TraceCheckUtils]: 60: Hoare triple {225036#(< ~counter~0 45)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {225036#(< ~counter~0 45)} is VALID [2022-04-28 12:42:09,092 INFO L290 TraceCheckUtils]: 59: Hoare triple {225036#(< ~counter~0 45)} assume !!(#t~post6 < 50);havoc #t~post6; {225036#(< ~counter~0 45)} is VALID [2022-04-28 12:42:09,093 INFO L290 TraceCheckUtils]: 58: Hoare triple {225046#(< ~counter~0 44)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {225036#(< ~counter~0 45)} is VALID [2022-04-28 12:42:09,094 INFO L290 TraceCheckUtils]: 57: Hoare triple {225046#(< ~counter~0 44)} ~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; {225046#(< ~counter~0 44)} is VALID [2022-04-28 12:42:09,094 INFO L290 TraceCheckUtils]: 56: Hoare triple {225046#(< ~counter~0 44)} assume !(~c~0 >= ~b~0); {225046#(< ~counter~0 44)} is VALID [2022-04-28 12:42:09,094 INFO L290 TraceCheckUtils]: 55: Hoare triple {225046#(< ~counter~0 44)} assume !!(#t~post7 < 50);havoc #t~post7; {225046#(< ~counter~0 44)} is VALID [2022-04-28 12:42:09,095 INFO L290 TraceCheckUtils]: 54: Hoare triple {225059#(< ~counter~0 43)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {225046#(< ~counter~0 44)} is VALID [2022-04-28 12:42:09,096 INFO L290 TraceCheckUtils]: 53: Hoare triple {225059#(< ~counter~0 43)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,096 INFO L290 TraceCheckUtils]: 52: Hoare triple {225059#(< ~counter~0 43)} assume !(~c~0 >= 2 * ~v~0); {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,096 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {224540#true} {225059#(< ~counter~0 43)} #104#return; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,096 INFO L290 TraceCheckUtils]: 50: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L290 TraceCheckUtils]: 49: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L290 TraceCheckUtils]: 48: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L272 TraceCheckUtils]: 47: Hoare triple {225059#(< ~counter~0 43)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {224540#true} {225059#(< ~counter~0 43)} #102#return; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,097 INFO L290 TraceCheckUtils]: 45: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L290 TraceCheckUtils]: 44: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L290 TraceCheckUtils]: 43: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,097 INFO L272 TraceCheckUtils]: 42: Hoare triple {225059#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,098 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {224540#true} {225059#(< ~counter~0 43)} #100#return; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,098 INFO L290 TraceCheckUtils]: 40: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,098 INFO L290 TraceCheckUtils]: 39: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,098 INFO L290 TraceCheckUtils]: 38: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,098 INFO L272 TraceCheckUtils]: 37: Hoare triple {225059#(< ~counter~0 43)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,099 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {224540#true} {225059#(< ~counter~0 43)} #98#return; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,099 INFO L290 TraceCheckUtils]: 35: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,099 INFO L290 TraceCheckUtils]: 34: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,099 INFO L272 TraceCheckUtils]: 32: Hoare triple {225059#(< ~counter~0 43)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,099 INFO L290 TraceCheckUtils]: 31: Hoare triple {225059#(< ~counter~0 43)} assume !!(#t~post8 < 50);havoc #t~post8; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,100 INFO L290 TraceCheckUtils]: 30: Hoare triple {225132#(< ~counter~0 42)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {225059#(< ~counter~0 43)} is VALID [2022-04-28 12:42:09,101 INFO L290 TraceCheckUtils]: 29: Hoare triple {225132#(< ~counter~0 42)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {225132#(< ~counter~0 42)} is VALID [2022-04-28 12:42:09,101 INFO L290 TraceCheckUtils]: 28: Hoare triple {225132#(< ~counter~0 42)} assume !!(#t~post7 < 50);havoc #t~post7; {225132#(< ~counter~0 42)} is VALID [2022-04-28 12:42:09,102 INFO L290 TraceCheckUtils]: 27: Hoare triple {225142#(< ~counter~0 41)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {225132#(< ~counter~0 42)} is VALID [2022-04-28 12:42:09,102 INFO L290 TraceCheckUtils]: 26: Hoare triple {225142#(< ~counter~0 41)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {225142#(< ~counter~0 41)} is VALID [2022-04-28 12:42:09,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {225142#(< ~counter~0 41)} assume !!(#t~post6 < 50);havoc #t~post6; {225142#(< ~counter~0 41)} is VALID [2022-04-28 12:42:09,104 INFO L290 TraceCheckUtils]: 24: Hoare triple {225152#(< ~counter~0 40)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {225142#(< ~counter~0 41)} is VALID [2022-04-28 12:42:09,104 INFO L290 TraceCheckUtils]: 23: Hoare triple {225152#(< ~counter~0 40)} ~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; {225152#(< ~counter~0 40)} is VALID [2022-04-28 12:42:09,104 INFO L290 TraceCheckUtils]: 22: Hoare triple {225152#(< ~counter~0 40)} assume !(~c~0 >= ~b~0); {225152#(< ~counter~0 40)} is VALID [2022-04-28 12:42:09,105 INFO L290 TraceCheckUtils]: 21: Hoare triple {225152#(< ~counter~0 40)} assume !!(#t~post7 < 50);havoc #t~post7; {225152#(< ~counter~0 40)} is VALID [2022-04-28 12:42:09,106 INFO L290 TraceCheckUtils]: 20: Hoare triple {225165#(< ~counter~0 39)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {225152#(< ~counter~0 40)} is VALID [2022-04-28 12:42:09,106 INFO L290 TraceCheckUtils]: 19: Hoare triple {225165#(< ~counter~0 39)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {225165#(< ~counter~0 39)} is VALID [2022-04-28 12:42:09,106 INFO L290 TraceCheckUtils]: 18: Hoare triple {225165#(< ~counter~0 39)} assume !!(#t~post6 < 50);havoc #t~post6; {225165#(< ~counter~0 39)} is VALID [2022-04-28 12:42:09,107 INFO L290 TraceCheckUtils]: 17: Hoare triple {225175#(< ~counter~0 38)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {225165#(< ~counter~0 39)} is VALID [2022-04-28 12:42:09,108 INFO L290 TraceCheckUtils]: 16: Hoare triple {225175#(< ~counter~0 38)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,108 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {224540#true} {225175#(< ~counter~0 38)} #96#return; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,108 INFO L290 TraceCheckUtils]: 14: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,108 INFO L290 TraceCheckUtils]: 13: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,108 INFO L290 TraceCheckUtils]: 12: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,108 INFO L272 TraceCheckUtils]: 11: Hoare triple {225175#(< ~counter~0 38)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,109 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {224540#true} {225175#(< ~counter~0 38)} #94#return; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {224540#true} assume true; {224540#true} is VALID [2022-04-28 12:42:09,109 INFO L290 TraceCheckUtils]: 8: Hoare triple {224540#true} assume !(0 == ~cond); {224540#true} is VALID [2022-04-28 12:42:09,109 INFO L290 TraceCheckUtils]: 7: Hoare triple {224540#true} ~cond := #in~cond; {224540#true} is VALID [2022-04-28 12:42:09,109 INFO L272 TraceCheckUtils]: 6: Hoare triple {225175#(< ~counter~0 38)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {224540#true} is VALID [2022-04-28 12:42:09,109 INFO L290 TraceCheckUtils]: 5: Hoare triple {225175#(< ~counter~0 38)} 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; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,109 INFO L272 TraceCheckUtils]: 4: Hoare triple {225175#(< ~counter~0 38)} call #t~ret9 := main(); {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,110 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {225175#(< ~counter~0 38)} {224540#true} #108#return; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,110 INFO L290 TraceCheckUtils]: 2: Hoare triple {225175#(< ~counter~0 38)} assume true; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,110 INFO L290 TraceCheckUtils]: 1: Hoare triple {224540#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; {225175#(< ~counter~0 38)} is VALID [2022-04-28 12:42:09,111 INFO L272 TraceCheckUtils]: 0: Hoare triple {224540#true} call ULTIMATE.init(); {224540#true} is VALID [2022-04-28 12:42:09,111 INFO L134 CoverageAnalysis]: Checked inductivity of 235 backedges. 41 proven. 78 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 12:42:09,111 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:42:09,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1790848801] [2022-04-28 12:42:09,111 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:42:09,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [740844492] [2022-04-28 12:42:09,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [740844492] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:42:09,111 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:42:09,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 16] total 30 [2022-04-28 12:42:09,112 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:42:09,112 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1559456125] [2022-04-28 12:42:09,112 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1559456125] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:42:09,112 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:42:09,112 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 12:42:09,112 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1789906272] [2022-04-28 12:42:09,112 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:42:09,112 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 110 [2022-04-28 12:42:09,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:42:09,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:42:09,217 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:42:09,218 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 12:42:09,218 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:42:09,218 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 12:42:09,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=383, Invalid=487, Unknown=0, NotChecked=0, Total=870 [2022-04-28 12:42:09,218 INFO L87 Difference]: Start difference. First operand 2212 states and 2885 transitions. Second operand has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:42:17,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:42:17,485 INFO L93 Difference]: Finished difference Result 3498 states and 4737 transitions. [2022-04-28 12:42:17,485 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-28 12:42:17,485 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 110 [2022-04-28 12:42:17,485 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:42:17,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:42:17,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 339 transitions. [2022-04-28 12:42:17,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:42:17,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 339 transitions. [2022-04-28 12:42:17,489 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 339 transitions. [2022-04-28 12:42:17,842 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 339 edges. 339 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:42:18,139 INFO L225 Difference]: With dead ends: 3498 [2022-04-28 12:42:18,139 INFO L226 Difference]: Without dead ends: 2692 [2022-04-28 12:42:18,141 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 229 GetRequests, 191 SyntacticMatches, 0 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 90 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=653, Invalid=907, Unknown=0, NotChecked=0, Total=1560 [2022-04-28 12:42:18,141 INFO L413 NwaCegarLoop]: 85 mSDtfsCounter, 272 mSDsluCounter, 303 mSDsCounter, 0 mSdLazyCounter, 208 mSolverCounterSat, 131 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 272 SdHoareTripleChecker+Valid, 388 SdHoareTripleChecker+Invalid, 339 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 131 IncrementalHoareTripleChecker+Valid, 208 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:42:18,141 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [272 Valid, 388 Invalid, 339 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [131 Valid, 208 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:42:18,142 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2692 states. [2022-04-28 12:42:24,859 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2692 to 2630. [2022-04-28 12:42:24,860 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:42:24,862 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2692 states. Second operand has 2630 states, 1836 states have (on average 1.2167755991285403) internal successors, (2234), 1862 states have internal predecessors, (2234), 587 states have call successors, (587), 207 states have call predecessors, (587), 206 states have return successors, (581), 560 states have call predecessors, (581), 581 states have call successors, (581) [2022-04-28 12:42:24,864 INFO L74 IsIncluded]: Start isIncluded. First operand 2692 states. Second operand has 2630 states, 1836 states have (on average 1.2167755991285403) internal successors, (2234), 1862 states have internal predecessors, (2234), 587 states have call successors, (587), 207 states have call predecessors, (587), 206 states have return successors, (581), 560 states have call predecessors, (581), 581 states have call successors, (581) [2022-04-28 12:42:24,865 INFO L87 Difference]: Start difference. First operand 2692 states. Second operand has 2630 states, 1836 states have (on average 1.2167755991285403) internal successors, (2234), 1862 states have internal predecessors, (2234), 587 states have call successors, (587), 207 states have call predecessors, (587), 206 states have return successors, (581), 560 states have call predecessors, (581), 581 states have call successors, (581) [2022-04-28 12:42:25,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:42:25,070 INFO L93 Difference]: Finished difference Result 2692 states and 3460 transitions. [2022-04-28 12:42:25,070 INFO L276 IsEmpty]: Start isEmpty. Operand 2692 states and 3460 transitions. [2022-04-28 12:42:25,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:42:25,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:42:25,075 INFO L74 IsIncluded]: Start isIncluded. First operand has 2630 states, 1836 states have (on average 1.2167755991285403) internal successors, (2234), 1862 states have internal predecessors, (2234), 587 states have call successors, (587), 207 states have call predecessors, (587), 206 states have return successors, (581), 560 states have call predecessors, (581), 581 states have call successors, (581) Second operand 2692 states. [2022-04-28 12:42:25,077 INFO L87 Difference]: Start difference. First operand has 2630 states, 1836 states have (on average 1.2167755991285403) internal successors, (2234), 1862 states have internal predecessors, (2234), 587 states have call successors, (587), 207 states have call predecessors, (587), 206 states have return successors, (581), 560 states have call predecessors, (581), 581 states have call successors, (581) Second operand 2692 states. [2022-04-28 12:42:25,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:42:25,283 INFO L93 Difference]: Finished difference Result 2692 states and 3460 transitions. [2022-04-28 12:42:25,283 INFO L276 IsEmpty]: Start isEmpty. Operand 2692 states and 3460 transitions. [2022-04-28 12:42:25,286 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:42:25,286 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:42:25,286 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:42:25,286 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:42:25,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2630 states, 1836 states have (on average 1.2167755991285403) internal successors, (2234), 1862 states have internal predecessors, (2234), 587 states have call successors, (587), 207 states have call predecessors, (587), 206 states have return successors, (581), 560 states have call predecessors, (581), 581 states have call successors, (581) [2022-04-28 12:42:25,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2630 states to 2630 states and 3402 transitions. [2022-04-28 12:42:25,618 INFO L78 Accepts]: Start accepts. Automaton has 2630 states and 3402 transitions. Word has length 110 [2022-04-28 12:42:25,618 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:42:25,618 INFO L495 AbstractCegarLoop]: Abstraction has 2630 states and 3402 transitions. [2022-04-28 12:42:25,618 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 4.0625) internal successors, (65), 15 states have internal predecessors, (65), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 12:42:25,618 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2630 states and 3402 transitions. [2022-04-28 12:42:37,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 3402 edges. 3402 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:42:37,211 INFO L276 IsEmpty]: Start isEmpty. Operand 2630 states and 3402 transitions. [2022-04-28 12:42:37,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 116 [2022-04-28 12:42:37,231 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:42:37,232 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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-28 12:42:37,249 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Forceful destruction successful, exit code 0 [2022-04-28 12:42:37,432 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 44 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable43 [2022-04-28 12:42:37,432 INFO L420 AbstractCegarLoop]: === Iteration 45 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:42:37,433 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:42:37,433 INFO L85 PathProgramCache]: Analyzing trace with hash 1581009068, now seen corresponding path program 11 times [2022-04-28 12:42:37,433 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:42:37,433 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [561111116] [2022-04-28 12:42:37,434 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:42:37,434 INFO L85 PathProgramCache]: Analyzing trace with hash 1581009068, now seen corresponding path program 12 times [2022-04-28 12:42:37,434 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:42:37,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [336413893] [2022-04-28 12:42:37,434 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:42:37,434 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:42:37,445 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:42:37,446 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [748160177] [2022-04-28 12:42:37,446 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:42:37,446 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:42:37,446 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:42:37,448 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 12:42:37,451 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-04-28 12:42:37,532 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 8 check-sat command(s) [2022-04-28 12:42:37,532 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:42:37,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 96 conjunts are in the unsatisfiable core [2022-04-28 12:42:37,557 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:42:37,560 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:42:39,945 INFO L272 TraceCheckUtils]: 0: Hoare triple {242889#true} call ULTIMATE.init(); {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {242889#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; {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {242889#true} {242889#true} #108#return; {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L272 TraceCheckUtils]: 4: Hoare triple {242889#true} call #t~ret9 := main(); {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {242889#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; {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L272 TraceCheckUtils]: 6: Hoare triple {242889#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L290 TraceCheckUtils]: 8: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L290 TraceCheckUtils]: 9: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {242889#true} {242889#true} #94#return; {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L272 TraceCheckUtils]: 11: Hoare triple {242889#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L290 TraceCheckUtils]: 12: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L290 TraceCheckUtils]: 13: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L290 TraceCheckUtils]: 14: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {242889#true} {242889#true} #96#return; {242889#true} is VALID [2022-04-28 12:42:39,946 INFO L290 TraceCheckUtils]: 16: Hoare triple {242889#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {242942#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,947 INFO L290 TraceCheckUtils]: 17: Hoare triple {242942#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {242942#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,947 INFO L290 TraceCheckUtils]: 18: Hoare triple {242942#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {242942#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,948 INFO L290 TraceCheckUtils]: 19: Hoare triple {242942#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:42:39,948 INFO L290 TraceCheckUtils]: 20: Hoare triple {242952#(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))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:42:39,948 INFO L290 TraceCheckUtils]: 21: Hoare triple {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:42:39,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:42:39,949 INFO L290 TraceCheckUtils]: 23: Hoare triple {242952#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {242965#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:42:39,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {242965#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {242965#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:42:39,950 INFO L290 TraceCheckUtils]: 25: Hoare triple {242965#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {242965#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:42:39,950 INFO L290 TraceCheckUtils]: 26: Hoare triple {242965#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {242975#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:42:39,951 INFO L290 TraceCheckUtils]: 27: Hoare triple {242975#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {242975#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:42:39,951 INFO L290 TraceCheckUtils]: 28: Hoare triple {242975#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 50);havoc #t~post7; {242975#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 12:42:39,952 INFO L290 TraceCheckUtils]: 29: Hoare triple {242975#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,952 INFO L290 TraceCheckUtils]: 30: Hoare triple {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,952 INFO L290 TraceCheckUtils]: 31: Hoare triple {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 50);havoc #t~post8; {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,953 INFO L272 TraceCheckUtils]: 32: Hoare triple {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,953 INFO L290 TraceCheckUtils]: 33: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,953 INFO L290 TraceCheckUtils]: 34: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,953 INFO L290 TraceCheckUtils]: 35: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,954 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {242889#true} {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,954 INFO L272 TraceCheckUtils]: 37: Hoare triple {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,954 INFO L290 TraceCheckUtils]: 38: Hoare triple {242889#true} ~cond := #in~cond; {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:42:39,954 INFO L290 TraceCheckUtils]: 39: Hoare triple {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,954 INFO L290 TraceCheckUtils]: 40: Hoare triple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,955 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} {242985#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,956 INFO L272 TraceCheckUtils]: 42: Hoare triple {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,956 INFO L290 TraceCheckUtils]: 43: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,956 INFO L290 TraceCheckUtils]: 44: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,956 INFO L290 TraceCheckUtils]: 45: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,956 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {242889#true} {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,957 INFO L272 TraceCheckUtils]: 47: Hoare triple {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,957 INFO L290 TraceCheckUtils]: 48: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,957 INFO L290 TraceCheckUtils]: 49: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,957 INFO L290 TraceCheckUtils]: 50: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,957 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {242889#true} {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 12:42:39,958 INFO L290 TraceCheckUtils]: 52: Hoare triple {243024#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,959 INFO L290 TraceCheckUtils]: 53: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,959 INFO L290 TraceCheckUtils]: 54: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 50);havoc #t~post8; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,959 INFO L272 TraceCheckUtils]: 55: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,959 INFO L290 TraceCheckUtils]: 56: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,959 INFO L290 TraceCheckUtils]: 57: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,959 INFO L290 TraceCheckUtils]: 58: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,960 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {242889#true} {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,960 INFO L272 TraceCheckUtils]: 60: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,960 INFO L290 TraceCheckUtils]: 61: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,960 INFO L290 TraceCheckUtils]: 62: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,960 INFO L290 TraceCheckUtils]: 63: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,961 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {242889#true} {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #100#return; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,961 INFO L272 TraceCheckUtils]: 65: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,961 INFO L290 TraceCheckUtils]: 66: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,961 INFO L290 TraceCheckUtils]: 67: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,961 INFO L290 TraceCheckUtils]: 68: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,962 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {242889#true} {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #102#return; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,962 INFO L272 TraceCheckUtils]: 70: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,962 INFO L290 TraceCheckUtils]: 71: Hoare triple {242889#true} ~cond := #in~cond; {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:42:39,963 INFO L290 TraceCheckUtils]: 72: Hoare triple {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,963 INFO L290 TraceCheckUtils]: 73: Hoare triple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,964 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #104#return; {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,964 INFO L290 TraceCheckUtils]: 75: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !(~c~0 >= 2 * ~v~0); {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 12:42:39,966 INFO L290 TraceCheckUtils]: 76: Hoare triple {243058#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {243131#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,967 INFO L290 TraceCheckUtils]: 77: Hoare triple {243131#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {243131#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,967 INFO L290 TraceCheckUtils]: 78: Hoare triple {243131#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} assume !!(#t~post7 < 50);havoc #t~post7; {243131#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,968 INFO L290 TraceCheckUtils]: 79: Hoare triple {243131#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,968 INFO L290 TraceCheckUtils]: 80: Hoare triple {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,969 INFO L290 TraceCheckUtils]: 81: Hoare triple {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} assume !!(#t~post8 < 50);havoc #t~post8; {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,969 INFO L272 TraceCheckUtils]: 82: Hoare triple {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,969 INFO L290 TraceCheckUtils]: 83: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,969 INFO L290 TraceCheckUtils]: 84: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,969 INFO L290 TraceCheckUtils]: 85: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,970 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {242889#true} {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} #98#return; {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,970 INFO L272 TraceCheckUtils]: 87: Hoare triple {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,970 INFO L290 TraceCheckUtils]: 88: Hoare triple {242889#true} ~cond := #in~cond; {242889#true} is VALID [2022-04-28 12:42:39,970 INFO L290 TraceCheckUtils]: 89: Hoare triple {242889#true} assume !(0 == ~cond); {242889#true} is VALID [2022-04-28 12:42:39,970 INFO L290 TraceCheckUtils]: 90: Hoare triple {242889#true} assume true; {242889#true} is VALID [2022-04-28 12:42:39,971 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {242889#true} {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} #100#return; {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,971 INFO L272 TraceCheckUtils]: 92: Hoare triple {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,971 INFO L290 TraceCheckUtils]: 93: Hoare triple {242889#true} ~cond := #in~cond; {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:42:39,972 INFO L290 TraceCheckUtils]: 94: Hoare triple {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,972 INFO L290 TraceCheckUtils]: 95: Hoare triple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,975 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} {243141#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~k~0 2))} #102#return; {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,976 INFO L272 TraceCheckUtils]: 97: Hoare triple {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {242889#true} is VALID [2022-04-28 12:42:39,976 INFO L290 TraceCheckUtils]: 98: Hoare triple {242889#true} ~cond := #in~cond; {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:42:39,976 INFO L290 TraceCheckUtils]: 99: Hoare triple {243013#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,976 INFO L290 TraceCheckUtils]: 100: Hoare triple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:42:39,977 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {243017#(not (= |__VERIFIER_assert_#in~cond| 0))} {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} #104#return; {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,978 INFO L290 TraceCheckUtils]: 102: Hoare triple {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} assume !(~c~0 >= 2 * ~v~0); {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} is VALID [2022-04-28 12:42:39,979 INFO L290 TraceCheckUtils]: 103: Hoare triple {243193#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~y~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~k~0 2))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {243215#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= (+ (- 2) main_~k~0) 1))} is VALID [2022-04-28 12:42:39,979 INFO L290 TraceCheckUtils]: 104: Hoare triple {243215#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= (+ (- 2) main_~k~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {243215#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= (+ (- 2) main_~k~0) 1))} is VALID [2022-04-28 12:42:39,980 INFO L290 TraceCheckUtils]: 105: Hoare triple {243215#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= (+ (- 2) main_~k~0) 1))} assume !!(#t~post7 < 50);havoc #t~post7; {243215#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= (+ (- 2) main_~k~0) 1))} is VALID [2022-04-28 12:42:39,980 INFO L290 TraceCheckUtils]: 106: Hoare triple {243215#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (= (+ (- 2) main_~k~0) 1))} assume !(~c~0 >= ~b~0); {243225#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (not (<= main_~b~0 main_~c~0)) (= (+ (- 2) main_~k~0) 1))} is VALID [2022-04-28 12:42:39,982 INFO L290 TraceCheckUtils]: 107: Hoare triple {243225#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ main_~y~0 (* (- 1) main_~b~0 main_~k~0) (* (- 1) main_~b~0) (* main_~b~0 (+ (- 2) main_~k~0)))) (not (<= main_~b~0 main_~c~0)) (= (+ (- 2) main_~k~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; {243229#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,982 INFO L290 TraceCheckUtils]: 108: Hoare triple {243229#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {243229#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,983 INFO L290 TraceCheckUtils]: 109: Hoare triple {243229#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 50);havoc #t~post6; {243229#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,983 INFO L290 TraceCheckUtils]: 110: Hoare triple {243229#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~y~0)) (= main_~a~0 main_~x~0))} assume !(0 != ~b~0); {243239#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (= (+ (* main_~a~0 (- 3)) main_~y~0) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:42:39,985 INFO L272 TraceCheckUtils]: 111: Hoare triple {243239#(and (= main_~r~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= (+ main_~s~0 (* main_~r~0 3)) 1) (= (+ main_~q~0 (* main_~p~0 3)) 0) (= (+ (* main_~a~0 (- 3)) main_~y~0) 0) (not (<= (* main_~a~0 4) main_~y~0)) (= main_~a~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)); {243243#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:42:39,986 INFO L290 TraceCheckUtils]: 112: Hoare triple {243243#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {243247#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:42:39,986 INFO L290 TraceCheckUtils]: 113: Hoare triple {243247#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {242890#false} is VALID [2022-04-28 12:42:39,986 INFO L290 TraceCheckUtils]: 114: Hoare triple {242890#false} assume !false; {242890#false} is VALID [2022-04-28 12:42:39,987 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 89 proven. 81 refuted. 0 times theorem prover too weak. 172 trivial. 0 not checked. [2022-04-28 12:42:39,987 INFO L328 TraceCheckSpWp]: Computing backward predicates...