/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/egcd2-ll_unwindbound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 12:15:36,048 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 12:15:36,085 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 12:15:36,118 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 12:15:36,118 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 12:15:36,119 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 12:15:36,120 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 12:15:36,122 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 12:15:36,123 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 12:15:36,124 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 12:15:36,125 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 12:15:36,127 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 12:15:36,127 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 12:15:36,131 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 12:15:36,132 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 12:15:36,134 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 12:15:36,135 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 12:15:36,136 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 12:15:36,141 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 12:15:36,144 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 12:15:36,145 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 12:15:36,147 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 12:15:36,147 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 12:15:36,149 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 12:15:36,151 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 12:15:36,156 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 12:15:36,156 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 12:15:36,156 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 12:15:36,157 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 12:15:36,157 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 12:15:36,158 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 12:15:36,158 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 12:15:36,159 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 12:15:36,159 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 12:15:36,160 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 12:15:36,161 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 12:15:36,161 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 12:15:36,162 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 12:15:36,162 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 12:15:36,162 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 12:15:36,163 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 12:15:36,164 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 12:15:36,164 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:15:36,185 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 12:15:36,185 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 12:15:36,186 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 12:15:36,187 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 12:15:36,187 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 12:15:36,187 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 12:15:36,187 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 12:15:36,187 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 12:15:36,188 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 12:15:36,188 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 12:15:36,188 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 12:15:36,188 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 12:15:36,188 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 12:15:36,188 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 12:15:36,189 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 12:15:36,189 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 12:15:36,189 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 12:15:36,189 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 12:15:36,189 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 12:15:36,190 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 12:15:36,190 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 12:15:36,190 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-28 12:15:36,190 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:15:36,432 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 12:15:36,464 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 12:15:36,466 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 12:15:36,467 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 12:15:36,468 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 12:15:36,469 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound100.c [2022-04-28 12:15:36,524 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fb7163c1a/f22d9828010a466a94847c2362119e1c/FLAG8ab5bacc0 [2022-04-28 12:15:36,880 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 12:15:36,881 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound100.c [2022-04-28 12:15:36,886 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fb7163c1a/f22d9828010a466a94847c2362119e1c/FLAG8ab5bacc0 [2022-04-28 12:15:36,895 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/fb7163c1a/f22d9828010a466a94847c2362119e1c [2022-04-28 12:15:36,898 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 12:15:36,899 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 12:15:36,900 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 12:15:36,900 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 12:15:36,909 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 12:15:36,910 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 12:15:36" (1/1) ... [2022-04-28 12:15:36,911 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3033ba03 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:36, skipping insertion in model container [2022-04-28 12:15:36,911 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 12:15:36" (1/1) ... [2022-04-28 12:15:36,915 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 12:15:36,928 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 12:15:37,072 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound100.c[490,503] [2022-04-28 12:15:37,091 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 12:15:37,098 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 12:15:37,108 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd2-ll_unwindbound100.c[490,503] [2022-04-28 12:15:37,118 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 12:15:37,132 INFO L208 MainTranslator]: Completed translation [2022-04-28 12:15:37,132 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37 WrapperNode [2022-04-28 12:15:37,133 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 12:15:37,133 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 12:15:37,134 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 12:15:37,134 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 12:15:37,142 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,142 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,148 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,148 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,154 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,157 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,158 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,160 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 12:15:37,161 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 12:15:37,161 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 12:15:37,161 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 12:15:37,162 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (1/1) ... [2022-04-28 12:15:37,175 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 12:15:37,182 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:37,195 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:15:37,207 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:15:37,228 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 12:15:37,228 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 12:15:37,228 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 12:15:37,228 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 12:15:37,229 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 12:15:37,229 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 12:15:37,229 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 12:15:37,229 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 12:15:37,230 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 12:15:37,230 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 12:15:37,230 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 12:15:37,231 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 12:15:37,231 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 12:15:37,231 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 12:15:37,232 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 12:15:37,234 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 12:15:37,234 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 12:15:37,234 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 12:15:37,234 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 12:15:37,234 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 12:15:37,287 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 12:15:37,288 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 12:15:37,506 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 12:15:37,512 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 12:15:37,512 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-28 12:15:37,513 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:15:37 BoogieIcfgContainer [2022-04-28 12:15:37,513 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 12:15:37,515 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 12:15:37,515 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 12:15:37,521 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 12:15:37,526 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 12:15:36" (1/3) ... [2022-04-28 12:15:37,527 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20073497 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 12:15:37, skipping insertion in model container [2022-04-28 12:15:37,527 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:15:37" (2/3) ... [2022-04-28 12:15:37,527 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20073497 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 12:15:37, skipping insertion in model container [2022-04-28 12:15:37,528 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:15:37" (3/3) ... [2022-04-28 12:15:37,531 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd2-ll_unwindbound100.c [2022-04-28 12:15:37,541 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 12:15:37,541 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 12:15:37,576 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 12:15:37,582 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@2859218e, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@25492695 [2022-04-28 12:15:37,582 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 12:15:37,589 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 23 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-28 12:15:37,594 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-28 12:15:37,595 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:37,595 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:37,596 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:37,599 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:37,600 INFO L85 PathProgramCache]: Analyzing trace with hash 1950618521, now seen corresponding path program 1 times [2022-04-28 12:15:37,606 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:37,606 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [565392265] [2022-04-28 12:15:37,615 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:37,615 INFO L85 PathProgramCache]: Analyzing trace with hash 1950618521, now seen corresponding path program 2 times [2022-04-28 12:15:37,618 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:37,618 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [319786540] [2022-04-28 12:15:37,618 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:37,619 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:37,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:37,762 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 12:15:37,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:37,791 INFO L290 TraceCheckUtils]: 0: Hoare triple {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {42#true} is VALID [2022-04-28 12:15:37,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-28 12:15:37,792 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-28 12:15:37,793 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 12:15:37,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:37,805 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,805 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,806 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,806 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-28 12:15:37,806 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 12:15:37,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:37,821 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,823 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-28 12:15:37,823 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 12:15:37,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:37,840 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,841 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,841 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,841 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-28 12:15:37,841 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 12:15:37,843 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:37,854 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,856 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,856 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#false} {43#false} #84#return; {43#false} is VALID [2022-04-28 12:15:37,857 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} call ULTIMATE.init(); {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 12:15:37,857 INFO L290 TraceCheckUtils]: 1: Hoare triple {63#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {42#true} is VALID [2022-04-28 12:15:37,858 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} assume true; {42#true} is VALID [2022-04-28 12:15:37,858 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} #98#return; {42#true} is VALID [2022-04-28 12:15:37,859 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} call #t~ret8 := main(); {42#true} is VALID [2022-04-28 12:15:37,859 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {42#true} is VALID [2022-04-28 12:15:37,860 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-28 12:15:37,860 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,861 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {43#false} {42#true} #78#return; {43#false} is VALID [2022-04-28 12:15:37,861 INFO L272 TraceCheckUtils]: 11: Hoare triple {43#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {42#true} is VALID [2022-04-28 12:15:37,862 INFO L290 TraceCheckUtils]: 12: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,862 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,862 INFO L290 TraceCheckUtils]: 14: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,863 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {43#false} {43#false} #80#return; {43#false} is VALID [2022-04-28 12:15:37,863 INFO L290 TraceCheckUtils]: 16: Hoare triple {43#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {43#false} is VALID [2022-04-28 12:15:37,863 INFO L272 TraceCheckUtils]: 17: Hoare triple {43#false} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {42#true} is VALID [2022-04-28 12:15:37,863 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,864 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,866 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {43#false} {43#false} #82#return; {43#false} is VALID [2022-04-28 12:15:37,866 INFO L272 TraceCheckUtils]: 22: Hoare triple {43#false} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {42#true} is VALID [2022-04-28 12:15:37,866 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#true} ~cond := #in~cond; {42#true} is VALID [2022-04-28 12:15:37,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {42#true} assume 0 == ~cond;assume false; {43#false} is VALID [2022-04-28 12:15:37,867 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} assume true; {43#false} is VALID [2022-04-28 12:15:37,868 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {43#false} {43#false} #84#return; {43#false} is VALID [2022-04-28 12:15:37,869 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} assume !true; {43#false} is VALID [2022-04-28 12:15:37,871 INFO L272 TraceCheckUtils]: 28: Hoare triple {43#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {43#false} is VALID [2022-04-28 12:15:37,871 INFO L290 TraceCheckUtils]: 29: Hoare triple {43#false} ~cond := #in~cond; {43#false} is VALID [2022-04-28 12:15:37,871 INFO L290 TraceCheckUtils]: 30: Hoare triple {43#false} assume 0 == ~cond; {43#false} is VALID [2022-04-28 12:15:37,872 INFO L290 TraceCheckUtils]: 31: Hoare triple {43#false} assume !false; {43#false} is VALID [2022-04-28 12:15:37,872 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 12:15:37,873 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:37,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [319786540] [2022-04-28 12:15:37,874 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [319786540] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:37,874 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:37,874 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 12:15:37,876 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:37,877 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [565392265] [2022-04-28 12:15:37,877 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [565392265] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:37,877 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:37,877 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 12:15:37,877 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1293647922] [2022-04-28 12:15:37,878 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:37,882 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 32 [2022-04-28 12:15:37,884 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:37,887 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:37,928 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:37,928 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 12:15:37,928 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:37,963 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 12:15:37,964 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 12:15:37,966 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 23 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:38,200 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:38,202 INFO L93 Difference]: Finished difference Result 72 states and 112 transitions. [2022-04-28 12:15:38,203 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 12:15:38,206 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 32 [2022-04-28 12:15:38,206 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:38,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:38,217 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-04-28 12:15:38,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:38,224 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 112 transitions. [2022-04-28 12:15:38,224 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 112 transitions. [2022-04-28 12:15:38,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:38,350 INFO L225 Difference]: With dead ends: 72 [2022-04-28 12:15:38,350 INFO L226 Difference]: Without dead ends: 35 [2022-04-28 12:15:38,353 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 12:15:38,357 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:38,359 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 49 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:15:38,371 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-28 12:15:38,391 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 34. [2022-04-28 12:15:38,391 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:38,392 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:38,393 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:38,394 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:38,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:38,412 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-28 12:15:38,412 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 12:15:38,413 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:38,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:38,414 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 35 states. [2022-04-28 12:15:38,414 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 35 states. [2022-04-28 12:15:38,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:38,418 INFO L93 Difference]: Finished difference Result 35 states and 46 transitions. [2022-04-28 12:15:38,418 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 46 transitions. [2022-04-28 12:15:38,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:38,420 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:38,420 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:38,421 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:38,422 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.2777777777777777) internal successors, (23), 20 states have internal predecessors, (23), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:38,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 45 transitions. [2022-04-28 12:15:38,427 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 45 transitions. Word has length 32 [2022-04-28 12:15:38,428 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:38,428 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 45 transitions. [2022-04-28 12:15:38,429 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:38,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 45 transitions. [2022-04-28 12:15:38,473 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:15:38,473 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 45 transitions. [2022-04-28 12:15:38,474 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-28 12:15:38,474 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:38,475 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:38,475 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 12:15:38,475 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:38,476 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:38,476 INFO L85 PathProgramCache]: Analyzing trace with hash -1734391985, now seen corresponding path program 1 times [2022-04-28 12:15:38,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:38,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1368458108] [2022-04-28 12:15:38,477 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:38,477 INFO L85 PathProgramCache]: Analyzing trace with hash -1734391985, now seen corresponding path program 2 times [2022-04-28 12:15:38,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:38,477 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [751107997] [2022-04-28 12:15:38,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:38,477 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:38,497 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:38,497 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1741184555] [2022-04-28 12:15:38,498 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:38,498 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:38,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:38,499 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:15:38,515 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:15:38,581 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 12:15:38,582 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:38,584 INFO L263 TraceCheckSpWp]: Trace formula consists of 78 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 12:15:38,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:38,617 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:38,862 INFO L272 TraceCheckUtils]: 0: Hoare triple {348#true} call ULTIMATE.init(); {348#true} is VALID [2022-04-28 12:15:38,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {348#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; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,867 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {356#(<= ~counter~0 0)} {348#true} #98#return; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,867 INFO L272 TraceCheckUtils]: 4: Hoare triple {356#(<= ~counter~0 0)} call #t~ret8 := main(); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,868 INFO L290 TraceCheckUtils]: 5: Hoare triple {356#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,868 INFO L272 TraceCheckUtils]: 6: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,869 INFO L290 TraceCheckUtils]: 7: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,870 INFO L290 TraceCheckUtils]: 8: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,870 INFO L290 TraceCheckUtils]: 9: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,871 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #78#return; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,871 INFO L272 TraceCheckUtils]: 11: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,872 INFO L290 TraceCheckUtils]: 12: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,872 INFO L290 TraceCheckUtils]: 13: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,873 INFO L290 TraceCheckUtils]: 14: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,873 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #80#return; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,874 INFO L290 TraceCheckUtils]: 16: Hoare triple {356#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,874 INFO L272 TraceCheckUtils]: 17: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,875 INFO L290 TraceCheckUtils]: 18: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,875 INFO L290 TraceCheckUtils]: 19: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,876 INFO L290 TraceCheckUtils]: 20: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,876 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #82#return; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,877 INFO L272 TraceCheckUtils]: 22: Hoare triple {356#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,878 INFO L290 TraceCheckUtils]: 23: Hoare triple {356#(<= ~counter~0 0)} ~cond := #in~cond; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,878 INFO L290 TraceCheckUtils]: 24: Hoare triple {356#(<= ~counter~0 0)} assume !(0 == ~cond); {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,879 INFO L290 TraceCheckUtils]: 25: Hoare triple {356#(<= ~counter~0 0)} assume true; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,879 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {356#(<= ~counter~0 0)} {356#(<= ~counter~0 0)} #84#return; {356#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:38,880 INFO L290 TraceCheckUtils]: 27: Hoare triple {356#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {435#(<= |main_#t~post6| 0)} is VALID [2022-04-28 12:15:38,881 INFO L290 TraceCheckUtils]: 28: Hoare triple {435#(<= |main_#t~post6| 0)} assume !(#t~post6 < 100);havoc #t~post6; {349#false} is VALID [2022-04-28 12:15:38,881 INFO L272 TraceCheckUtils]: 29: Hoare triple {349#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {349#false} is VALID [2022-04-28 12:15:38,881 INFO L290 TraceCheckUtils]: 30: Hoare triple {349#false} ~cond := #in~cond; {349#false} is VALID [2022-04-28 12:15:38,881 INFO L290 TraceCheckUtils]: 31: Hoare triple {349#false} assume 0 == ~cond; {349#false} is VALID [2022-04-28 12:15:38,881 INFO L290 TraceCheckUtils]: 32: Hoare triple {349#false} assume !false; {349#false} is VALID [2022-04-28 12:15:38,882 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 12:15:38,882 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:15:38,883 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:38,883 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [751107997] [2022-04-28 12:15:38,883 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:15:38,883 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1741184555] [2022-04-28 12:15:38,884 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1741184555] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:38,884 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:38,884 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 12:15:38,885 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:38,885 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1368458108] [2022-04-28 12:15:38,885 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1368458108] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:38,885 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:38,885 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 12:15:38,886 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1171117494] [2022-04-28 12:15:38,886 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:38,886 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 12:15:38,887 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:38,887 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:38,908 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:38,909 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 12:15:38,909 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:38,911 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 12:15:38,914 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 12:15:38,914 INFO L87 Difference]: Start difference. First operand 34 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:39,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:39,032 INFO L93 Difference]: Finished difference Result 44 states and 56 transitions. [2022-04-28 12:15:39,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 12:15:39,032 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-28 12:15:39,032 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:39,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:39,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-04-28 12:15:39,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:39,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-04-28 12:15:39,043 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 56 transitions. [2022-04-28 12:15:39,093 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:15:39,095 INFO L225 Difference]: With dead ends: 44 [2022-04-28 12:15:39,095 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 12:15:39,096 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 12:15:39,097 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:39,097 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 110 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:15:39,098 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 12:15:39,110 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 36. [2022-04-28 12:15:39,111 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:39,111 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:39,111 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:39,112 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:39,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:39,114 INFO L93 Difference]: Finished difference Result 36 states and 47 transitions. [2022-04-28 12:15:39,115 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-28 12:15:39,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:39,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:39,116 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 36 states. [2022-04-28 12:15:39,116 INFO L87 Difference]: Start difference. First operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 36 states. [2022-04-28 12:15:39,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:39,119 INFO L93 Difference]: Finished difference Result 36 states and 47 transitions. [2022-04-28 12:15:39,119 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-28 12:15:39,119 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:39,119 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:39,119 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:39,120 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:39,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 20 states have (on average 1.25) internal successors, (25), 21 states have internal predecessors, (25), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:39,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 47 transitions. [2022-04-28 12:15:39,122 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 47 transitions. Word has length 33 [2022-04-28 12:15:39,122 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:39,122 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 47 transitions. [2022-04-28 12:15:39,123 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:39,123 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 47 transitions. [2022-04-28 12:15:39,166 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:15:39,166 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 47 transitions. [2022-04-28 12:15:39,167 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 12:15:39,167 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:39,167 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:39,193 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:15:39,383 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:15:39,383 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:39,384 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:39,384 INFO L85 PathProgramCache]: Analyzing trace with hash 2066454233, now seen corresponding path program 1 times [2022-04-28 12:15:39,384 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:39,384 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1293121457] [2022-04-28 12:15:39,385 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:39,385 INFO L85 PathProgramCache]: Analyzing trace with hash 2066454233, now seen corresponding path program 2 times [2022-04-28 12:15:39,385 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:39,385 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1821277324] [2022-04-28 12:15:39,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:39,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:39,401 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:39,401 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [649211676] [2022-04-28 12:15:39,401 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:39,401 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:39,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:39,402 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:15:39,404 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:15:39,451 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:15:39,451 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:39,452 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 12:15:39,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:39,464 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:39,610 INFO L272 TraceCheckUtils]: 0: Hoare triple {682#true} call ULTIMATE.init(); {682#true} is VALID [2022-04-28 12:15:39,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {682#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; {682#true} is VALID [2022-04-28 12:15:39,611 INFO L290 TraceCheckUtils]: 2: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,611 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {682#true} {682#true} #98#return; {682#true} is VALID [2022-04-28 12:15:39,611 INFO L272 TraceCheckUtils]: 4: Hoare triple {682#true} call #t~ret8 := main(); {682#true} is VALID [2022-04-28 12:15:39,611 INFO L290 TraceCheckUtils]: 5: Hoare triple {682#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {682#true} is VALID [2022-04-28 12:15:39,612 INFO L272 TraceCheckUtils]: 6: Hoare triple {682#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,612 INFO L290 TraceCheckUtils]: 7: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-28 12:15:39,612 INFO L290 TraceCheckUtils]: 8: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-28 12:15:39,612 INFO L290 TraceCheckUtils]: 9: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,612 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {682#true} {682#true} #78#return; {682#true} is VALID [2022-04-28 12:15:39,612 INFO L272 TraceCheckUtils]: 11: Hoare triple {682#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,613 INFO L290 TraceCheckUtils]: 12: Hoare triple {682#true} ~cond := #in~cond; {723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:15:39,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {723#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:39,614 INFO L290 TraceCheckUtils]: 14: Hoare triple {727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:39,614 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {727#(not (= |assume_abort_if_not_#in~cond| 0))} {682#true} #80#return; {734#(<= 1 main_~y~0)} is VALID [2022-04-28 12:15:39,617 INFO L290 TraceCheckUtils]: 16: Hoare triple {734#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,617 INFO L272 TraceCheckUtils]: 17: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,617 INFO L290 TraceCheckUtils]: 18: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-28 12:15:39,618 INFO L290 TraceCheckUtils]: 19: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-28 12:15:39,618 INFO L290 TraceCheckUtils]: 20: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,618 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #82#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,619 INFO L272 TraceCheckUtils]: 22: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,619 INFO L290 TraceCheckUtils]: 23: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-28 12:15:39,619 INFO L290 TraceCheckUtils]: 24: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-28 12:15:39,619 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,620 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #84#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,621 INFO L290 TraceCheckUtils]: 27: Hoare triple {738#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,622 INFO L290 TraceCheckUtils]: 28: Hoare triple {738#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,622 INFO L290 TraceCheckUtils]: 29: Hoare triple {738#(<= 1 main_~b~0)} assume !(0 != ~b~0); {683#false} is VALID [2022-04-28 12:15:39,623 INFO L272 TraceCheckUtils]: 30: Hoare triple {683#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {683#false} is VALID [2022-04-28 12:15:39,623 INFO L290 TraceCheckUtils]: 31: Hoare triple {683#false} ~cond := #in~cond; {683#false} is VALID [2022-04-28 12:15:39,624 INFO L290 TraceCheckUtils]: 32: Hoare triple {683#false} assume 0 == ~cond; {683#false} is VALID [2022-04-28 12:15:39,624 INFO L290 TraceCheckUtils]: 33: Hoare triple {683#false} assume !false; {683#false} is VALID [2022-04-28 12:15:39,624 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 12:15:39,624 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:15:39,899 INFO L290 TraceCheckUtils]: 33: Hoare triple {683#false} assume !false; {683#false} is VALID [2022-04-28 12:15:39,899 INFO L290 TraceCheckUtils]: 32: Hoare triple {683#false} assume 0 == ~cond; {683#false} is VALID [2022-04-28 12:15:39,899 INFO L290 TraceCheckUtils]: 31: Hoare triple {683#false} ~cond := #in~cond; {683#false} is VALID [2022-04-28 12:15:39,899 INFO L272 TraceCheckUtils]: 30: Hoare triple {683#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {683#false} is VALID [2022-04-28 12:15:39,900 INFO L290 TraceCheckUtils]: 29: Hoare triple {738#(<= 1 main_~b~0)} assume !(0 != ~b~0); {683#false} is VALID [2022-04-28 12:15:39,900 INFO L290 TraceCheckUtils]: 28: Hoare triple {738#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {738#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,901 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #84#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-28 12:15:39,902 INFO L290 TraceCheckUtils]: 23: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-28 12:15:39,902 INFO L272 TraceCheckUtils]: 22: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,902 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {682#true} {738#(<= 1 main_~b~0)} #82#return; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,903 INFO L290 TraceCheckUtils]: 20: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,903 INFO L290 TraceCheckUtils]: 19: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-28 12:15:39,903 INFO L290 TraceCheckUtils]: 18: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-28 12:15:39,903 INFO L272 TraceCheckUtils]: 17: Hoare triple {738#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,903 INFO L290 TraceCheckUtils]: 16: Hoare triple {734#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {738#(<= 1 main_~b~0)} is VALID [2022-04-28 12:15:39,904 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {727#(not (= |assume_abort_if_not_#in~cond| 0))} {682#true} #80#return; {734#(<= 1 main_~y~0)} is VALID [2022-04-28 12:15:39,905 INFO L290 TraceCheckUtils]: 14: Hoare triple {727#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:39,905 INFO L290 TraceCheckUtils]: 13: Hoare triple {853#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {727#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:39,906 INFO L290 TraceCheckUtils]: 12: Hoare triple {682#true} ~cond := #in~cond; {853#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 12:15:39,906 INFO L272 TraceCheckUtils]: 11: Hoare triple {682#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,906 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {682#true} {682#true} #78#return; {682#true} is VALID [2022-04-28 12:15:39,906 INFO L290 TraceCheckUtils]: 9: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,906 INFO L290 TraceCheckUtils]: 8: Hoare triple {682#true} assume !(0 == ~cond); {682#true} is VALID [2022-04-28 12:15:39,907 INFO L290 TraceCheckUtils]: 7: Hoare triple {682#true} ~cond := #in~cond; {682#true} is VALID [2022-04-28 12:15:39,907 INFO L272 TraceCheckUtils]: 6: Hoare triple {682#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {682#true} is VALID [2022-04-28 12:15:39,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {682#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {682#true} is VALID [2022-04-28 12:15:39,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {682#true} call #t~ret8 := main(); {682#true} is VALID [2022-04-28 12:15:39,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {682#true} {682#true} #98#return; {682#true} is VALID [2022-04-28 12:15:39,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {682#true} assume true; {682#true} is VALID [2022-04-28 12:15:39,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {682#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; {682#true} is VALID [2022-04-28 12:15:39,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {682#true} call ULTIMATE.init(); {682#true} is VALID [2022-04-28 12:15:39,908 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 12:15:39,908 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:39,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1821277324] [2022-04-28 12:15:39,908 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:15:39,908 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [649211676] [2022-04-28 12:15:39,908 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [649211676] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:15:39,909 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:15:39,909 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-28 12:15:39,909 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:39,909 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1293121457] [2022-04-28 12:15:39,909 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1293121457] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:39,909 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:39,909 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:15:39,910 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1392260244] [2022-04-28 12:15:39,910 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:39,910 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-28 12:15:39,911 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:39,911 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:39,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:39,932 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:15:39,932 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:39,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:15:39,933 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 12:15:39,933 INFO L87 Difference]: Start difference. First operand 36 states and 47 transitions. Second operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:40,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:40,280 INFO L93 Difference]: Finished difference Result 53 states and 71 transitions. [2022-04-28 12:15:40,280 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:15:40,280 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-28 12:15:40,280 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:40,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:40,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-04-28 12:15:40,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:40,285 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 71 transitions. [2022-04-28 12:15:40,285 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 71 transitions. [2022-04-28 12:15:40,357 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:40,359 INFO L225 Difference]: With dead ends: 53 [2022-04-28 12:15:40,359 INFO L226 Difference]: Without dead ends: 45 [2022-04-28 12:15:40,359 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=50, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:15:40,360 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 28 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 135 SdHoareTripleChecker+Invalid, 85 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:40,360 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 135 Invalid, 85 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:15:40,361 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-28 12:15:40,395 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 37. [2022-04-28 12:15:40,395 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:40,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:40,395 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:40,396 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:40,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:40,398 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-04-28 12:15:40,398 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-28 12:15:40,399 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:40,399 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:40,400 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 45 states. [2022-04-28 12:15:40,400 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 45 states. [2022-04-28 12:15:40,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:40,402 INFO L93 Difference]: Finished difference Result 45 states and 62 transitions. [2022-04-28 12:15:40,402 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 62 transitions. [2022-04-28 12:15:40,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:40,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:40,403 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:40,403 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:40,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 22 states have internal predecessors, (26), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 12:15:40,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 48 transitions. [2022-04-28 12:15:40,405 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 48 transitions. Word has length 34 [2022-04-28 12:15:40,405 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:40,405 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 48 transitions. [2022-04-28 12:15:40,406 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 5 states have internal predecessors, (16), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:40,406 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 48 transitions. [2022-04-28 12:15:40,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:40,451 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 48 transitions. [2022-04-28 12:15:40,452 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 12:15:40,452 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:40,452 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:40,482 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:15:40,674 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:15:40,675 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:40,675 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:40,675 INFO L85 PathProgramCache]: Analyzing trace with hash 1678606280, now seen corresponding path program 1 times [2022-04-28 12:15:40,675 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:40,675 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1642559883] [2022-04-28 12:15:40,676 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:40,676 INFO L85 PathProgramCache]: Analyzing trace with hash 1678606280, now seen corresponding path program 2 times [2022-04-28 12:15:40,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:40,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [325624389] [2022-04-28 12:15:40,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:40,676 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:40,703 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:40,703 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [67553693] [2022-04-28 12:15:40,703 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:40,703 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:40,703 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:40,704 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:15:40,728 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:15:40,748 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 12:15:40,748 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:40,749 INFO L263 TraceCheckSpWp]: Trace formula consists of 88 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 12:15:40,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:40,760 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:40,882 INFO L272 TraceCheckUtils]: 0: Hoare triple {1166#true} call ULTIMATE.init(); {1166#true} is VALID [2022-04-28 12:15:40,882 INFO L290 TraceCheckUtils]: 1: Hoare triple {1166#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; {1166#true} is VALID [2022-04-28 12:15:40,882 INFO L290 TraceCheckUtils]: 2: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1166#true} {1166#true} #98#return; {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L272 TraceCheckUtils]: 4: Hoare triple {1166#true} call #t~ret8 := main(); {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L290 TraceCheckUtils]: 5: Hoare triple {1166#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L272 TraceCheckUtils]: 6: Hoare triple {1166#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L290 TraceCheckUtils]: 7: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L290 TraceCheckUtils]: 8: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-28 12:15:40,883 INFO L290 TraceCheckUtils]: 9: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1166#true} {1166#true} #78#return; {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L272 TraceCheckUtils]: 11: Hoare triple {1166#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L290 TraceCheckUtils]: 12: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L290 TraceCheckUtils]: 13: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L290 TraceCheckUtils]: 14: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1166#true} {1166#true} #80#return; {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {1166#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1166#true} is VALID [2022-04-28 12:15:40,884 INFO L272 TraceCheckUtils]: 17: Hoare triple {1166#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1166#true} is VALID [2022-04-28 12:15:40,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-28 12:15:40,885 INFO L290 TraceCheckUtils]: 19: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-28 12:15:40,885 INFO L290 TraceCheckUtils]: 20: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-28 12:15:40,885 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1166#true} {1166#true} #82#return; {1166#true} is VALID [2022-04-28 12:15:40,885 INFO L272 TraceCheckUtils]: 22: Hoare triple {1166#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1166#true} is VALID [2022-04-28 12:15:40,886 INFO L290 TraceCheckUtils]: 23: Hoare triple {1166#true} ~cond := #in~cond; {1166#true} is VALID [2022-04-28 12:15:40,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {1166#true} assume !(0 == ~cond); {1166#true} is VALID [2022-04-28 12:15:40,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {1166#true} assume true; {1166#true} is VALID [2022-04-28 12:15:40,886 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1166#true} {1166#true} #84#return; {1166#true} is VALID [2022-04-28 12:15:40,886 INFO L290 TraceCheckUtils]: 27: Hoare triple {1166#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1166#true} is VALID [2022-04-28 12:15:40,886 INFO L290 TraceCheckUtils]: 28: Hoare triple {1166#true} assume !!(#t~post6 < 100);havoc #t~post6; {1166#true} is VALID [2022-04-28 12:15:40,887 INFO L290 TraceCheckUtils]: 29: Hoare triple {1166#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:15:40,887 INFO L290 TraceCheckUtils]: 30: Hoare triple {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:15:40,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} assume !!(#t~post7 < 100);havoc #t~post7; {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} is VALID [2022-04-28 12:15:40,889 INFO L272 TraceCheckUtils]: 32: Hoare triple {1258#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (not (= main_~b~0 0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {1268#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:15:40,889 INFO L290 TraceCheckUtils]: 33: Hoare triple {1268#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1272#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:40,890 INFO L290 TraceCheckUtils]: 34: Hoare triple {1272#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1167#false} is VALID [2022-04-28 12:15:40,890 INFO L290 TraceCheckUtils]: 35: Hoare triple {1167#false} assume !false; {1167#false} is VALID [2022-04-28 12:15:40,890 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 12:15:40,890 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:15:40,890 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:40,890 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [325624389] [2022-04-28 12:15:40,890 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:15:40,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [67553693] [2022-04-28 12:15:40,891 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [67553693] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:40,891 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:40,891 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:15:40,891 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:40,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1642559883] [2022-04-28 12:15:40,892 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1642559883] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:40,892 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:40,892 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:15:40,892 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [265151598] [2022-04-28 12:15:40,892 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:40,892 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-04-28 12:15:40,893 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:40,893 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 12:15:40,914 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:15:40,915 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:15:40,915 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:40,915 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:15:40,915 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:15:40,916 INFO L87 Difference]: Start difference. First operand 37 states and 48 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 12:15:41,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:41,136 INFO L93 Difference]: Finished difference Result 51 states and 67 transitions. [2022-04-28 12:15:41,136 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:15:41,136 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 36 [2022-04-28 12:15:41,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:41,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 12:15:41,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-28 12:15:41,138 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 12:15:41,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-04-28 12:15:41,140 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-04-28 12:15:41,197 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:15:41,200 INFO L225 Difference]: With dead ends: 51 [2022-04-28 12:15:41,201 INFO L226 Difference]: Without dead ends: 49 [2022-04-28 12:15:41,203 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 32 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:15:41,204 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 7 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 150 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:41,205 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 150 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:15:41,207 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-04-28 12:15:41,243 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 44. [2022-04-28 12:15:41,243 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:41,244 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:41,245 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:41,245 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:41,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:41,248 INFO L93 Difference]: Finished difference Result 49 states and 65 transitions. [2022-04-28 12:15:41,248 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-28 12:15:41,249 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:41,249 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:41,249 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 49 states. [2022-04-28 12:15:41,250 INFO L87 Difference]: Start difference. First operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 49 states. [2022-04-28 12:15:41,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:41,254 INFO L93 Difference]: Finished difference Result 49 states and 65 transitions. [2022-04-28 12:15:41,254 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 65 transitions. [2022-04-28 12:15:41,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:41,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:41,255 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:41,255 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:41,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 28 states have internal predecessors, (32), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:41,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 56 transitions. [2022-04-28 12:15:41,257 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 56 transitions. Word has length 36 [2022-04-28 12:15:41,257 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:41,258 INFO L495 AbstractCegarLoop]: Abstraction has 44 states and 56 transitions. [2022-04-28 12:15:41,259 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 12:15:41,259 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 44 states and 56 transitions. [2022-04-28 12:15:41,312 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:15:41,312 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 56 transitions. [2022-04-28 12:15:41,312 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 12:15:41,313 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:41,313 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:41,341 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-28 12:15:41,530 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:15:41,531 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:41,531 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:41,531 INFO L85 PathProgramCache]: Analyzing trace with hash -2124209112, now seen corresponding path program 1 times [2022-04-28 12:15:41,531 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:41,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1865091982] [2022-04-28 12:15:41,532 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:41,532 INFO L85 PathProgramCache]: Analyzing trace with hash -2124209112, now seen corresponding path program 2 times [2022-04-28 12:15:41,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:41,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1763861822] [2022-04-28 12:15:41,532 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:41,532 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:41,552 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:41,553 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1519035895] [2022-04-28 12:15:41,553 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:41,553 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:41,553 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:41,554 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:15:41,568 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:15:41,629 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:15:41,630 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:41,630 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 12:15:41,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:41,648 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:41,836 INFO L272 TraceCheckUtils]: 0: Hoare triple {1568#true} call ULTIMATE.init(); {1568#true} is VALID [2022-04-28 12:15:41,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {1568#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; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,838 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1576#(<= ~counter~0 0)} {1568#true} #98#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,838 INFO L272 TraceCheckUtils]: 4: Hoare triple {1576#(<= ~counter~0 0)} call #t~ret8 := main(); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,839 INFO L290 TraceCheckUtils]: 5: Hoare triple {1576#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,839 INFO L272 TraceCheckUtils]: 6: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,840 INFO L290 TraceCheckUtils]: 7: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,840 INFO L290 TraceCheckUtils]: 8: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,840 INFO L290 TraceCheckUtils]: 9: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,844 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #78#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,845 INFO L272 TraceCheckUtils]: 11: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,845 INFO L290 TraceCheckUtils]: 12: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,846 INFO L290 TraceCheckUtils]: 14: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,846 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #80#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,847 INFO L290 TraceCheckUtils]: 16: Hoare triple {1576#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,847 INFO L272 TraceCheckUtils]: 17: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,848 INFO L290 TraceCheckUtils]: 18: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,848 INFO L290 TraceCheckUtils]: 19: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,848 INFO L290 TraceCheckUtils]: 20: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,849 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #82#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,849 INFO L272 TraceCheckUtils]: 22: Hoare triple {1576#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,850 INFO L290 TraceCheckUtils]: 23: Hoare triple {1576#(<= ~counter~0 0)} ~cond := #in~cond; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,850 INFO L290 TraceCheckUtils]: 24: Hoare triple {1576#(<= ~counter~0 0)} assume !(0 == ~cond); {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,850 INFO L290 TraceCheckUtils]: 25: Hoare triple {1576#(<= ~counter~0 0)} assume true; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,851 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {1576#(<= ~counter~0 0)} {1576#(<= ~counter~0 0)} #84#return; {1576#(<= ~counter~0 0)} is VALID [2022-04-28 12:15:41,851 INFO L290 TraceCheckUtils]: 27: Hoare triple {1576#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1655#(<= ~counter~0 1)} is VALID [2022-04-28 12:15:41,852 INFO L290 TraceCheckUtils]: 28: Hoare triple {1655#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {1655#(<= ~counter~0 1)} is VALID [2022-04-28 12:15:41,852 INFO L290 TraceCheckUtils]: 29: Hoare triple {1655#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {1655#(<= ~counter~0 1)} is VALID [2022-04-28 12:15:41,852 INFO L290 TraceCheckUtils]: 30: Hoare triple {1655#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1665#(<= |main_#t~post7| 1)} is VALID [2022-04-28 12:15:41,853 INFO L290 TraceCheckUtils]: 31: Hoare triple {1665#(<= |main_#t~post7| 1)} assume !(#t~post7 < 100);havoc #t~post7; {1569#false} is VALID [2022-04-28 12:15:41,853 INFO L290 TraceCheckUtils]: 32: Hoare triple {1569#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; {1569#false} is VALID [2022-04-28 12:15:41,853 INFO L290 TraceCheckUtils]: 33: Hoare triple {1569#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1569#false} is VALID [2022-04-28 12:15:41,853 INFO L290 TraceCheckUtils]: 34: Hoare triple {1569#false} assume !(#t~post6 < 100);havoc #t~post6; {1569#false} is VALID [2022-04-28 12:15:41,854 INFO L272 TraceCheckUtils]: 35: Hoare triple {1569#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {1569#false} is VALID [2022-04-28 12:15:41,854 INFO L290 TraceCheckUtils]: 36: Hoare triple {1569#false} ~cond := #in~cond; {1569#false} is VALID [2022-04-28 12:15:41,854 INFO L290 TraceCheckUtils]: 37: Hoare triple {1569#false} assume 0 == ~cond; {1569#false} is VALID [2022-04-28 12:15:41,854 INFO L290 TraceCheckUtils]: 38: Hoare triple {1569#false} assume !false; {1569#false} is VALID [2022-04-28 12:15:41,854 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 12:15:41,854 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:15:41,854 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:41,855 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1763861822] [2022-04-28 12:15:41,855 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:15:41,855 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1519035895] [2022-04-28 12:15:41,855 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1519035895] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:41,855 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:41,855 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:15:41,855 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:41,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1865091982] [2022-04-28 12:15:41,856 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1865091982] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:41,856 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:41,856 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:15:41,856 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1562842706] [2022-04-28 12:15:41,856 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:41,856 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 12:15:41,857 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:41,857 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:41,878 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:41,879 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:15:41,879 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:41,879 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:15:41,879 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:15:41,879 INFO L87 Difference]: Start difference. First operand 44 states and 56 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:42,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:42,043 INFO L93 Difference]: Finished difference Result 72 states and 94 transitions. [2022-04-28 12:15:42,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:15:42,043 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 12:15:42,044 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:42,044 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:42,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-04-28 12:15:42,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:42,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-04-28 12:15:42,050 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2022-04-28 12:15:42,121 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:15:42,123 INFO L225 Difference]: With dead ends: 72 [2022-04-28 12:15:42,123 INFO L226 Difference]: Without dead ends: 46 [2022-04-28 12:15:42,123 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 38 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:15:42,124 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:42,124 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 133 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:15:42,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-28 12:15:42,166 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-28 12:15:42,166 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:42,167 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:42,167 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:42,167 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:42,169 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:42,169 INFO L93 Difference]: Finished difference Result 46 states and 58 transitions. [2022-04-28 12:15:42,169 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-04-28 12:15:42,170 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:42,170 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:42,170 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-28 12:15:42,170 INFO L87 Difference]: Start difference. First operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-28 12:15:42,172 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:42,172 INFO L93 Difference]: Finished difference Result 46 states and 58 transitions. [2022-04-28 12:15:42,173 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-04-28 12:15:42,173 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:42,173 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:42,173 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:42,173 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:42,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 30 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 12:15:42,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 58 transitions. [2022-04-28 12:15:42,175 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 58 transitions. Word has length 39 [2022-04-28 12:15:42,175 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:42,176 INFO L495 AbstractCegarLoop]: Abstraction has 46 states and 58 transitions. [2022-04-28 12:15:42,176 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (7), 3 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 12:15:42,176 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 58 transitions. [2022-04-28 12:15:42,230 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:15:42,230 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 58 transitions. [2022-04-28 12:15:42,231 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 12:15:42,231 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:42,231 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:42,257 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:15:42,451 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:15:42,451 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:42,452 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:42,452 INFO L85 PathProgramCache]: Analyzing trace with hash 1052701339, now seen corresponding path program 1 times [2022-04-28 12:15:42,452 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:42,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1383197667] [2022-04-28 12:15:42,453 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:42,453 INFO L85 PathProgramCache]: Analyzing trace with hash 1052701339, now seen corresponding path program 2 times [2022-04-28 12:15:42,453 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:42,453 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [379438659] [2022-04-28 12:15:42,453 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:42,453 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:42,466 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:42,466 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [744469461] [2022-04-28 12:15:42,466 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:42,466 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:42,466 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:42,467 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:15:42,475 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:15:42,522 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:15:42,523 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:42,524 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 12:15:42,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:42,534 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:42,792 INFO L272 TraceCheckUtils]: 0: Hoare triple {2017#true} call ULTIMATE.init(); {2017#true} is VALID [2022-04-28 12:15:42,792 INFO L290 TraceCheckUtils]: 1: Hoare triple {2017#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; {2017#true} is VALID [2022-04-28 12:15:42,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:42,793 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2017#true} {2017#true} #98#return; {2017#true} is VALID [2022-04-28 12:15:42,793 INFO L272 TraceCheckUtils]: 4: Hoare triple {2017#true} call #t~ret8 := main(); {2017#true} is VALID [2022-04-28 12:15:42,793 INFO L290 TraceCheckUtils]: 5: Hoare triple {2017#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2017#true} is VALID [2022-04-28 12:15:42,793 INFO L272 TraceCheckUtils]: 6: Hoare triple {2017#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:42,793 INFO L290 TraceCheckUtils]: 7: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:42,794 INFO L290 TraceCheckUtils]: 8: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:42,794 INFO L290 TraceCheckUtils]: 9: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:42,794 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2017#true} {2017#true} #78#return; {2017#true} is VALID [2022-04-28 12:15:42,794 INFO L272 TraceCheckUtils]: 11: Hoare triple {2017#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:42,800 INFO L290 TraceCheckUtils]: 12: Hoare triple {2017#true} ~cond := #in~cond; {2058#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:15:42,800 INFO L290 TraceCheckUtils]: 13: Hoare triple {2058#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2062#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:42,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {2062#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2062#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:42,802 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2062#(not (= |assume_abort_if_not_#in~cond| 0))} {2017#true} #80#return; {2069#(<= 1 main_~y~0)} is VALID [2022-04-28 12:15:42,806 INFO L290 TraceCheckUtils]: 16: Hoare triple {2069#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,806 INFO L272 TraceCheckUtils]: 17: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:42,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:42,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:42,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:42,808 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2017#true} {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,809 INFO L272 TraceCheckUtils]: 22: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:42,809 INFO L290 TraceCheckUtils]: 23: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:42,809 INFO L290 TraceCheckUtils]: 24: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:42,809 INFO L290 TraceCheckUtils]: 25: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:42,811 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2017#true} {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,811 INFO L290 TraceCheckUtils]: 27: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,815 INFO L290 TraceCheckUtils]: 28: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,815 INFO L290 TraceCheckUtils]: 29: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,816 INFO L290 TraceCheckUtils]: 30: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,816 INFO L290 TraceCheckUtils]: 31: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,816 INFO L272 TraceCheckUtils]: 32: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:42,816 INFO L290 TraceCheckUtils]: 33: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:42,817 INFO L290 TraceCheckUtils]: 34: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:42,817 INFO L290 TraceCheckUtils]: 35: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:42,817 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2017#true} {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:15:42,818 INFO L272 TraceCheckUtils]: 37: Hoare triple {2073#(and (= main_~r~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:15:42,819 INFO L290 TraceCheckUtils]: 38: Hoare triple {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2141#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:42,819 INFO L290 TraceCheckUtils]: 39: Hoare triple {2141#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2018#false} is VALID [2022-04-28 12:15:42,819 INFO L290 TraceCheckUtils]: 40: Hoare triple {2018#false} assume !false; {2018#false} is VALID [2022-04-28 12:15:42,822 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 5 proven. 6 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-28 12:15:42,822 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:15:43,037 INFO L290 TraceCheckUtils]: 40: Hoare triple {2018#false} assume !false; {2018#false} is VALID [2022-04-28 12:15:43,038 INFO L290 TraceCheckUtils]: 39: Hoare triple {2141#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2018#false} is VALID [2022-04-28 12:15:43,038 INFO L290 TraceCheckUtils]: 38: Hoare triple {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2141#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:43,039 INFO L272 TraceCheckUtils]: 37: Hoare triple {2157#(= 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)); {2137#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:15:43,040 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2017#true} {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,040 INFO L290 TraceCheckUtils]: 35: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:43,040 INFO L290 TraceCheckUtils]: 34: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:43,040 INFO L290 TraceCheckUtils]: 33: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:43,041 INFO L272 TraceCheckUtils]: 32: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:43,041 INFO L290 TraceCheckUtils]: 31: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,041 INFO L290 TraceCheckUtils]: 30: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,042 INFO L290 TraceCheckUtils]: 29: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,042 INFO L290 TraceCheckUtils]: 28: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,043 INFO L290 TraceCheckUtils]: 27: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,043 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2017#true} {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #84#return; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,044 INFO L290 TraceCheckUtils]: 25: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:43,044 INFO L290 TraceCheckUtils]: 24: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:43,044 INFO L290 TraceCheckUtils]: 23: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:43,044 INFO L272 TraceCheckUtils]: 22: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:43,045 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2017#true} {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #82#return; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,045 INFO L290 TraceCheckUtils]: 20: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:43,045 INFO L290 TraceCheckUtils]: 19: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:43,045 INFO L290 TraceCheckUtils]: 18: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:43,045 INFO L272 TraceCheckUtils]: 17: Hoare triple {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:43,046 INFO L290 TraceCheckUtils]: 16: Hoare triple {2017#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2157#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:15:43,046 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2017#true} {2017#true} #80#return; {2017#true} is VALID [2022-04-28 12:15:43,046 INFO L290 TraceCheckUtils]: 14: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:43,046 INFO L290 TraceCheckUtils]: 13: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:43,046 INFO L290 TraceCheckUtils]: 12: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:43,046 INFO L272 TraceCheckUtils]: 11: Hoare triple {2017#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:43,046 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2017#true} {2017#true} #78#return; {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L290 TraceCheckUtils]: 9: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {2017#true} assume !(0 == ~cond); {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L290 TraceCheckUtils]: 7: Hoare triple {2017#true} ~cond := #in~cond; {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L272 TraceCheckUtils]: 6: Hoare triple {2017#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {2017#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L272 TraceCheckUtils]: 4: Hoare triple {2017#true} call #t~ret8 := main(); {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2017#true} {2017#true} #98#return; {2017#true} is VALID [2022-04-28 12:15:43,047 INFO L290 TraceCheckUtils]: 2: Hoare triple {2017#true} assume true; {2017#true} is VALID [2022-04-28 12:15:43,048 INFO L290 TraceCheckUtils]: 1: Hoare triple {2017#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; {2017#true} is VALID [2022-04-28 12:15:43,048 INFO L272 TraceCheckUtils]: 0: Hoare triple {2017#true} call ULTIMATE.init(); {2017#true} is VALID [2022-04-28 12:15:43,048 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-28 12:15:43,048 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:43,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [379438659] [2022-04-28 12:15:43,048 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:15:43,048 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [744469461] [2022-04-28 12:15:43,049 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [744469461] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 12:15:43,049 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:15:43,049 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-28 12:15:43,049 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:43,049 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1383197667] [2022-04-28 12:15:43,049 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1383197667] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:43,049 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:43,049 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:15:43,049 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [578066002] [2022-04-28 12:15:43,050 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:43,050 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-28 12:15:43,050 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:43,050 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 12:15:43,075 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:15:43,075 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:15:43,075 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:43,075 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:15:43,076 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:15:43,076 INFO L87 Difference]: Start difference. First operand 46 states and 58 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 12:15:43,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:43,335 INFO L93 Difference]: Finished difference Result 61 states and 79 transitions. [2022-04-28 12:15:43,335 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:15:43,336 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-28 12:15:43,336 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:43,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 12:15:43,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-28 12:15:43,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 12:15:43,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-28 12:15:43,339 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-28 12:15:43,390 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:15:43,391 INFO L225 Difference]: With dead ends: 61 [2022-04-28 12:15:43,391 INFO L226 Difference]: Without dead ends: 59 [2022-04-28 12:15:43,392 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 73 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-28 12:15:43,392 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 8 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:43,392 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 157 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:15:43,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-28 12:15:43,462 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 58. [2022-04-28 12:15:43,463 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:43,463 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:43,463 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:43,464 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:43,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:43,469 INFO L93 Difference]: Finished difference Result 59 states and 77 transitions. [2022-04-28 12:15:43,469 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-28 12:15:43,469 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:43,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:43,470 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 59 states. [2022-04-28 12:15:43,470 INFO L87 Difference]: Start difference. First operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 59 states. [2022-04-28 12:15:43,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:43,473 INFO L93 Difference]: Finished difference Result 59 states and 77 transitions. [2022-04-28 12:15:43,473 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-28 12:15:43,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:43,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:43,474 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:43,474 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:43,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 34 states have (on average 1.2352941176470589) internal successors, (42), 37 states have internal predecessors, (42), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:43,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 76 transitions. [2022-04-28 12:15:43,477 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 76 transitions. Word has length 41 [2022-04-28 12:15:43,477 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:43,477 INFO L495 AbstractCegarLoop]: Abstraction has 58 states and 76 transitions. [2022-04-28 12:15:43,478 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 12:15:43,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 58 states and 76 transitions. [2022-04-28 12:15:43,564 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:15:43,565 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 76 transitions. [2022-04-28 12:15:43,566 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 12:15:43,566 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:43,567 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:43,592 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:15:43,787 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:15:43,787 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:43,788 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:43,788 INFO L85 PathProgramCache]: Analyzing trace with hash 1531994984, now seen corresponding path program 1 times [2022-04-28 12:15:43,788 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:43,788 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [996096385] [2022-04-28 12:15:43,788 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:43,788 INFO L85 PathProgramCache]: Analyzing trace with hash 1531994984, now seen corresponding path program 2 times [2022-04-28 12:15:43,788 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:43,788 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1187082920] [2022-04-28 12:15:43,789 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:43,789 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:43,801 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:43,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1135708713] [2022-04-28 12:15:43,802 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:43,802 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:43,802 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:43,803 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:15:43,807 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:15:43,859 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:15:43,859 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:43,860 INFO L263 TraceCheckSpWp]: Trace formula consists of 153 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 12:15:43,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:43,877 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:44,142 INFO L272 TraceCheckUtils]: 0: Hoare triple {2629#true} call ULTIMATE.init(); {2629#true} is VALID [2022-04-28 12:15:44,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {2629#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; {2629#true} is VALID [2022-04-28 12:15:44,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,143 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2629#true} {2629#true} #98#return; {2629#true} is VALID [2022-04-28 12:15:44,143 INFO L272 TraceCheckUtils]: 4: Hoare triple {2629#true} call #t~ret8 := main(); {2629#true} is VALID [2022-04-28 12:15:44,143 INFO L290 TraceCheckUtils]: 5: Hoare triple {2629#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2629#true} is VALID [2022-04-28 12:15:44,143 INFO L272 TraceCheckUtils]: 6: Hoare triple {2629#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,143 INFO L290 TraceCheckUtils]: 7: Hoare triple {2629#true} ~cond := #in~cond; {2655#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:15:44,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {2655#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:44,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2659#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:15:44,145 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2659#(not (= |assume_abort_if_not_#in~cond| 0))} {2629#true} #78#return; {2666#(<= 1 main_~x~0)} is VALID [2022-04-28 12:15:44,145 INFO L272 TraceCheckUtils]: 11: Hoare triple {2666#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,145 INFO L290 TraceCheckUtils]: 12: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,145 INFO L290 TraceCheckUtils]: 13: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,145 INFO L290 TraceCheckUtils]: 14: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,145 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2629#true} {2666#(<= 1 main_~x~0)} #80#return; {2666#(<= 1 main_~x~0)} is VALID [2022-04-28 12:15:44,146 INFO L290 TraceCheckUtils]: 16: Hoare triple {2666#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2685#(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:15:44,146 INFO L272 TraceCheckUtils]: 17: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,146 INFO L290 TraceCheckUtils]: 19: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,146 INFO L290 TraceCheckUtils]: 20: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,147 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #82#return; {2685#(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:15:44,147 INFO L272 TraceCheckUtils]: 22: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,147 INFO L290 TraceCheckUtils]: 23: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,147 INFO L290 TraceCheckUtils]: 24: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,147 INFO L290 TraceCheckUtils]: 25: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,148 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #84#return; {2685#(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:15:44,148 INFO L290 TraceCheckUtils]: 27: Hoare triple {2685#(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; {2685#(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:15:44,149 INFO L290 TraceCheckUtils]: 28: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 100);havoc #t~post6; {2685#(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:15:44,149 INFO L290 TraceCheckUtils]: 29: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2685#(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:15:44,150 INFO L290 TraceCheckUtils]: 30: Hoare triple {2685#(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; {2685#(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:15:44,150 INFO L290 TraceCheckUtils]: 31: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {2685#(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:15:44,150 INFO L272 TraceCheckUtils]: 32: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,150 INFO L290 TraceCheckUtils]: 33: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,150 INFO L290 TraceCheckUtils]: 34: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,150 INFO L290 TraceCheckUtils]: 35: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,151 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #86#return; {2685#(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:15:44,151 INFO L272 TraceCheckUtils]: 37: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,151 INFO L290 TraceCheckUtils]: 38: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,151 INFO L290 TraceCheckUtils]: 39: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,151 INFO L290 TraceCheckUtils]: 40: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,152 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2629#true} {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #88#return; {2685#(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:15:44,153 INFO L272 TraceCheckUtils]: 42: Hoare triple {2685#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:15:44,153 INFO L290 TraceCheckUtils]: 43: Hoare triple {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2768#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:44,153 INFO L290 TraceCheckUtils]: 44: Hoare triple {2768#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2630#false} is VALID [2022-04-28 12:15:44,153 INFO L290 TraceCheckUtils]: 45: Hoare triple {2630#false} assume !false; {2630#false} is VALID [2022-04-28 12:15:44,154 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 9 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 12:15:44,154 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:15:44,388 INFO L290 TraceCheckUtils]: 45: Hoare triple {2630#false} assume !false; {2630#false} is VALID [2022-04-28 12:15:44,388 INFO L290 TraceCheckUtils]: 44: Hoare triple {2768#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2630#false} is VALID [2022-04-28 12:15:44,389 INFO L290 TraceCheckUtils]: 43: Hoare triple {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2768#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:44,390 INFO L272 TraceCheckUtils]: 42: Hoare triple {2784#(= 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)); {2764#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:15:44,391 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #88#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,391 INFO L290 TraceCheckUtils]: 40: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,391 INFO L290 TraceCheckUtils]: 39: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,391 INFO L290 TraceCheckUtils]: 38: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,391 INFO L272 TraceCheckUtils]: 37: Hoare triple {2784#(= 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)); {2629#true} is VALID [2022-04-28 12:15:44,392 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #86#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,392 INFO L290 TraceCheckUtils]: 35: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,392 INFO L290 TraceCheckUtils]: 34: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,392 INFO L290 TraceCheckUtils]: 33: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,392 INFO L272 TraceCheckUtils]: 32: Hoare triple {2784#(= 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)); {2629#true} is VALID [2022-04-28 12:15:44,393 INFO L290 TraceCheckUtils]: 31: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,393 INFO L290 TraceCheckUtils]: 30: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,394 INFO L290 TraceCheckUtils]: 29: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,394 INFO L290 TraceCheckUtils]: 28: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,395 INFO L290 TraceCheckUtils]: 27: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,395 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #84#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,396 INFO L290 TraceCheckUtils]: 25: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,396 INFO L290 TraceCheckUtils]: 24: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,396 INFO L290 TraceCheckUtils]: 23: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,396 INFO L272 TraceCheckUtils]: 22: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,397 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2629#true} {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #82#return; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,397 INFO L290 TraceCheckUtils]: 20: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,397 INFO L290 TraceCheckUtils]: 19: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,397 INFO L290 TraceCheckUtils]: 18: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,397 INFO L272 TraceCheckUtils]: 17: Hoare triple {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,398 INFO L290 TraceCheckUtils]: 16: Hoare triple {2629#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {2784#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:15:44,398 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2629#true} {2629#true} #80#return; {2629#true} is VALID [2022-04-28 12:15:44,398 INFO L290 TraceCheckUtils]: 14: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,398 INFO L290 TraceCheckUtils]: 13: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,398 INFO L290 TraceCheckUtils]: 12: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,398 INFO L272 TraceCheckUtils]: 11: Hoare triple {2629#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2629#true} {2629#true} #78#return; {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L290 TraceCheckUtils]: 9: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {2629#true} assume !(0 == ~cond); {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L290 TraceCheckUtils]: 7: Hoare triple {2629#true} ~cond := #in~cond; {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L272 TraceCheckUtils]: 6: Hoare triple {2629#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L290 TraceCheckUtils]: 5: Hoare triple {2629#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L272 TraceCheckUtils]: 4: Hoare triple {2629#true} call #t~ret8 := main(); {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2629#true} {2629#true} #98#return; {2629#true} is VALID [2022-04-28 12:15:44,399 INFO L290 TraceCheckUtils]: 2: Hoare triple {2629#true} assume true; {2629#true} is VALID [2022-04-28 12:15:44,400 INFO L290 TraceCheckUtils]: 1: Hoare triple {2629#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; {2629#true} is VALID [2022-04-28 12:15:44,400 INFO L272 TraceCheckUtils]: 0: Hoare triple {2629#true} call ULTIMATE.init(); {2629#true} is VALID [2022-04-28 12:15:44,400 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 12:15:44,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:15:44,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1187082920] [2022-04-28 12:15:44,400 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:15:44,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1135708713] [2022-04-28 12:15:44,401 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1135708713] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 12:15:44,401 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:15:44,401 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-28 12:15:44,401 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:15:44,401 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [996096385] [2022-04-28 12:15:44,401 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [996096385] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:15:44,401 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:15:44,401 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:15:44,401 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [525838567] [2022-04-28 12:15:44,402 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:15:44,402 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 46 [2022-04-28 12:15:44,402 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:15:44,402 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:15:44,435 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:15:44,435 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:15:44,435 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:44,435 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:15:44,435 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:15:44,436 INFO L87 Difference]: Start difference. First operand 58 states and 76 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:15:44,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:44,685 INFO L93 Difference]: Finished difference Result 65 states and 82 transitions. [2022-04-28 12:15:44,685 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 12:15:44,686 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 46 [2022-04-28 12:15:44,686 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:15:44,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:15:44,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-28 12:15:44,687 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:15:44,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 67 transitions. [2022-04-28 12:15:44,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 67 transitions. [2022-04-28 12:15:44,746 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:15:44,747 INFO L225 Difference]: With dead ends: 65 [2022-04-28 12:15:44,748 INFO L226 Difference]: Without dead ends: 63 [2022-04-28 12:15:44,748 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 83 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-28 12:15:44,748 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 8 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:15:44,749 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 148 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:15:44,749 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-28 12:15:44,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 62. [2022-04-28 12:15:44,812 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:15:44,812 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:44,813 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:44,813 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:44,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:44,815 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-04-28 12:15:44,815 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-04-28 12:15:44,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:44,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:44,816 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 63 states. [2022-04-28 12:15:44,816 INFO L87 Difference]: Start difference. First operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 63 states. [2022-04-28 12:15:44,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:15:44,819 INFO L93 Difference]: Finished difference Result 63 states and 80 transitions. [2022-04-28 12:15:44,819 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 80 transitions. [2022-04-28 12:15:44,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:15:44,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:15:44,819 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:15:44,819 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:15:44,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 37 states have (on average 1.2162162162162162) internal successors, (45), 40 states have internal predecessors, (45), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:15:44,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 79 transitions. [2022-04-28 12:15:44,833 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 79 transitions. Word has length 46 [2022-04-28 12:15:44,833 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:15:44,833 INFO L495 AbstractCegarLoop]: Abstraction has 62 states and 79 transitions. [2022-04-28 12:15:44,833 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 12:15:44,833 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 79 transitions. [2022-04-28 12:15:44,925 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:15:44,925 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 79 transitions. [2022-04-28 12:15:44,926 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-28 12:15:44,926 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:15:44,926 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:15:44,950 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:15:45,127 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:15:45,127 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:15:45,127 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:15:45,128 INFO L85 PathProgramCache]: Analyzing trace with hash -300711301, now seen corresponding path program 1 times [2022-04-28 12:15:45,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:15:45,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1365527541] [2022-04-28 12:15:45,128 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:15:45,128 INFO L85 PathProgramCache]: Analyzing trace with hash -300711301, now seen corresponding path program 2 times [2022-04-28 12:15:45,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:15:45,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1148311509] [2022-04-28 12:15:45,129 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:15:45,129 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:15:45,142 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:15:45,142 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1537488301] [2022-04-28 12:15:45,142 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:15:45,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:15:45,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:15:45,143 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:15:45,158 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:15:45,214 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:15:45,214 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:15:45,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 162 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 12:15:45,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:15:45,227 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:15:52,068 INFO L272 TraceCheckUtils]: 0: Hoare triple {3295#true} call ULTIMATE.init(); {3295#true} is VALID [2022-04-28 12:15:52,068 INFO L290 TraceCheckUtils]: 1: Hoare triple {3295#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; {3295#true} is VALID [2022-04-28 12:15:52,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-28 12:15:52,068 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3295#true} {3295#true} #98#return; {3295#true} is VALID [2022-04-28 12:15:52,068 INFO L272 TraceCheckUtils]: 4: Hoare triple {3295#true} call #t~ret8 := main(); {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L290 TraceCheckUtils]: 5: Hoare triple {3295#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L272 TraceCheckUtils]: 6: Hoare triple {3295#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L290 TraceCheckUtils]: 7: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L290 TraceCheckUtils]: 8: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3295#true} {3295#true} #78#return; {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L272 TraceCheckUtils]: 11: Hoare triple {3295#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L290 TraceCheckUtils]: 12: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-28 12:15:52,069 INFO L290 TraceCheckUtils]: 13: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-28 12:15:52,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-28 12:15:52,070 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3295#true} {3295#true} #80#return; {3295#true} is VALID [2022-04-28 12:15:52,072 INFO L290 TraceCheckUtils]: 16: Hoare triple {3295#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,072 INFO L272 TraceCheckUtils]: 17: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-28 12:15:52,072 INFO L290 TraceCheckUtils]: 19: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-28 12:15:52,072 INFO L290 TraceCheckUtils]: 20: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-28 12:15:52,073 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3295#true} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #82#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,073 INFO L272 TraceCheckUtils]: 22: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-28 12:15:52,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-28 12:15:52,073 INFO L290 TraceCheckUtils]: 25: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-28 12:15:52,074 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3295#true} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #84#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,075 INFO L290 TraceCheckUtils]: 27: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,075 INFO L290 TraceCheckUtils]: 28: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(#t~post6 < 100);havoc #t~post6; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,076 INFO L290 TraceCheckUtils]: 29: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,076 INFO L290 TraceCheckUtils]: 30: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,077 INFO L272 TraceCheckUtils]: 32: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,077 INFO L290 TraceCheckUtils]: 33: Hoare triple {3295#true} ~cond := #in~cond; {3295#true} is VALID [2022-04-28 12:15:52,077 INFO L290 TraceCheckUtils]: 34: Hoare triple {3295#true} assume !(0 == ~cond); {3295#true} is VALID [2022-04-28 12:15:52,077 INFO L290 TraceCheckUtils]: 35: Hoare triple {3295#true} assume true; {3295#true} is VALID [2022-04-28 12:15:52,078 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3295#true} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #86#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,078 INFO L272 TraceCheckUtils]: 37: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,079 INFO L290 TraceCheckUtils]: 38: Hoare triple {3295#true} ~cond := #in~cond; {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:52,079 INFO L290 TraceCheckUtils]: 39: Hoare triple {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:15:52,080 INFO L290 TraceCheckUtils]: 40: Hoare triple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:15:52,080 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #88#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,081 INFO L272 TraceCheckUtils]: 42: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {3295#true} is VALID [2022-04-28 12:15:52,081 INFO L290 TraceCheckUtils]: 43: Hoare triple {3295#true} ~cond := #in~cond; {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:52,081 INFO L290 TraceCheckUtils]: 44: Hoare triple {3415#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:15:52,082 INFO L290 TraceCheckUtils]: 45: Hoare triple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:15:52,083 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3419#(not (= |__VERIFIER_assert_#in~cond| 0))} {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} #90#return; {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} is VALID [2022-04-28 12:15:52,084 INFO L272 TraceCheckUtils]: 47: Hoare triple {3348#(and (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3444#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:15:52,084 INFO L290 TraceCheckUtils]: 48: Hoare triple {3444#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3448#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:15:52,084 INFO L290 TraceCheckUtils]: 49: Hoare triple {3448#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3296#false} is VALID [2022-04-28 12:15:52,085 INFO L290 TraceCheckUtils]: 50: Hoare triple {3296#false} assume !false; {3296#false} is VALID [2022-04-28 12:15:52,085 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-28 12:15:52,085 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:16:46,090 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:16:46,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1148311509] [2022-04-28 12:16:46,090 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:16:46,090 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1537488301] [2022-04-28 12:16:46,091 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1537488301] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 12:16:46,091 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:16:46,091 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-28 12:16:46,091 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:16:46,091 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1365527541] [2022-04-28 12:16:46,091 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1365527541] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:16:46,091 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:16:46,091 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 12:16:46,091 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1607240639] [2022-04-28 12:16:46,092 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:16:46,092 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-28 12:16:46,092 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:16:46,092 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 12:16:46,139 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:16:46,139 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 12:16:46,139 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:16:46,140 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 12:16:46,140 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:16:46,140 INFO L87 Difference]: Start difference. First operand 62 states and 79 transitions. Second operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 12:16:46,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:16:46,784 INFO L93 Difference]: Finished difference Result 69 states and 85 transitions. [2022-04-28 12:16:46,784 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 12:16:46,784 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 51 [2022-04-28 12:16:46,784 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:16:46,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 12:16:46,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 67 transitions. [2022-04-28 12:16:46,786 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 12:16:46,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 67 transitions. [2022-04-28 12:16:46,787 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 67 transitions. [2022-04-28 12:16:46,870 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:16:46,872 INFO L225 Difference]: With dead ends: 69 [2022-04-28 12:16:46,872 INFO L226 Difference]: Without dead ends: 67 [2022-04-28 12:16:46,872 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=30, Invalid=80, Unknown=0, NotChecked=0, Total=110 [2022-04-28 12:16:46,872 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 12 mSDsluCounter, 125 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 128 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:16:46,873 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 160 Invalid, 128 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 12:16:46,873 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-28 12:16:46,936 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 66. [2022-04-28 12:16:46,936 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:16:46,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:16:46,936 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:16:46,938 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:16:46,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:16:46,940 INFO L93 Difference]: Finished difference Result 67 states and 83 transitions. [2022-04-28 12:16:46,940 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 83 transitions. [2022-04-28 12:16:46,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:16:46,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:16:46,948 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-28 12:16:46,952 INFO L87 Difference]: Start difference. First operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 67 states. [2022-04-28 12:16:46,954 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:16:46,955 INFO L93 Difference]: Finished difference Result 67 states and 83 transitions. [2022-04-28 12:16:46,955 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 83 transitions. [2022-04-28 12:16:46,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:16:46,955 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:16:46,955 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:16:46,955 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:16:46,956 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 40 states have (on average 1.2) internal successors, (48), 43 states have internal predecessors, (48), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 12:16:46,958 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 82 transitions. [2022-04-28 12:16:46,958 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 82 transitions. Word has length 51 [2022-04-28 12:16:46,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:16:46,958 INFO L495 AbstractCegarLoop]: Abstraction has 66 states and 82 transitions. [2022-04-28 12:16:46,959 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.0) internal successors, (21), 6 states have internal predecessors, (21), 2 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-04-28 12:16:46,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 66 states and 82 transitions. [2022-04-28 12:16:47,064 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:16:47,064 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 82 transitions. [2022-04-28 12:16:47,065 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-28 12:16:47,065 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:16:47,065 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:16:47,092 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:16:47,279 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:16:47,279 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:16:47,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:16:47,280 INFO L85 PathProgramCache]: Analyzing trace with hash -2044027516, now seen corresponding path program 1 times [2022-04-28 12:16:47,280 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:16:47,280 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2002425336] [2022-04-28 12:16:47,280 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:16:47,281 INFO L85 PathProgramCache]: Analyzing trace with hash -2044027516, now seen corresponding path program 2 times [2022-04-28 12:16:47,281 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:16:47,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [306533090] [2022-04-28 12:16:47,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:16:47,281 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:16:47,314 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:16:47,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1068611907] [2022-04-28 12:16:47,314 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:16:47,315 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:16:47,315 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:16:47,328 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:16:47,329 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:16:47,384 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:16:47,385 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:16:47,386 INFO L263 TraceCheckSpWp]: Trace formula consists of 181 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 12:16:47,397 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:16:47,399 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:16:47,627 INFO L272 TraceCheckUtils]: 0: Hoare triple {3879#true} call ULTIMATE.init(); {3879#true} is VALID [2022-04-28 12:16:47,627 INFO L290 TraceCheckUtils]: 1: Hoare triple {3879#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; {3879#true} is VALID [2022-04-28 12:16:47,627 INFO L290 TraceCheckUtils]: 2: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,627 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3879#true} {3879#true} #98#return; {3879#true} is VALID [2022-04-28 12:16:47,627 INFO L272 TraceCheckUtils]: 4: Hoare triple {3879#true} call #t~ret8 := main(); {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 5: Hoare triple {3879#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L272 TraceCheckUtils]: 6: Hoare triple {3879#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 7: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 8: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 9: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3879#true} {3879#true} #78#return; {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L272 TraceCheckUtils]: 11: Hoare triple {3879#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 12: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 13: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,628 INFO L290 TraceCheckUtils]: 14: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3879#true} {3879#true} #80#return; {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L290 TraceCheckUtils]: 16: Hoare triple {3879#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L272 TraceCheckUtils]: 17: Hoare triple {3879#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L290 TraceCheckUtils]: 18: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L290 TraceCheckUtils]: 19: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3879#true} {3879#true} #82#return; {3879#true} is VALID [2022-04-28 12:16:47,629 INFO L272 TraceCheckUtils]: 22: Hoare triple {3879#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:16:47,630 INFO L290 TraceCheckUtils]: 23: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,630 INFO L290 TraceCheckUtils]: 24: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,630 INFO L290 TraceCheckUtils]: 25: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,630 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3879#true} {3879#true} #84#return; {3879#true} is VALID [2022-04-28 12:16:47,630 INFO L290 TraceCheckUtils]: 27: Hoare triple {3879#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3879#true} is VALID [2022-04-28 12:16:47,630 INFO L290 TraceCheckUtils]: 28: Hoare triple {3879#true} assume !!(#t~post6 < 100);havoc #t~post6; {3879#true} is VALID [2022-04-28 12:16:47,631 INFO L290 TraceCheckUtils]: 29: Hoare triple {3879#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,631 INFO L290 TraceCheckUtils]: 30: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,632 INFO L290 TraceCheckUtils]: 31: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,632 INFO L272 TraceCheckUtils]: 32: Hoare triple {3971#(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)); {3879#true} is VALID [2022-04-28 12:16:47,632 INFO L290 TraceCheckUtils]: 33: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,632 INFO L290 TraceCheckUtils]: 34: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,632 INFO L290 TraceCheckUtils]: 35: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,633 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #86#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,633 INFO L272 TraceCheckUtils]: 37: Hoare triple {3971#(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)); {3879#true} is VALID [2022-04-28 12:16:47,633 INFO L290 TraceCheckUtils]: 38: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,633 INFO L290 TraceCheckUtils]: 39: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,633 INFO L290 TraceCheckUtils]: 40: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,634 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #88#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,634 INFO L272 TraceCheckUtils]: 42: Hoare triple {3971#(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)); {3879#true} is VALID [2022-04-28 12:16:47,634 INFO L290 TraceCheckUtils]: 43: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,634 INFO L290 TraceCheckUtils]: 44: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,634 INFO L290 TraceCheckUtils]: 45: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,635 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #90#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,635 INFO L272 TraceCheckUtils]: 47: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:16:47,635 INFO L290 TraceCheckUtils]: 48: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:16:47,635 INFO L290 TraceCheckUtils]: 49: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:16:47,635 INFO L290 TraceCheckUtils]: 50: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:16:47,636 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #92#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:16:47,637 INFO L290 TraceCheckUtils]: 52: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} is VALID [2022-04-28 12:16:47,638 INFO L290 TraceCheckUtils]: 53: Hoare triple {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} is VALID [2022-04-28 12:16:47,638 INFO L290 TraceCheckUtils]: 54: Hoare triple {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} is VALID [2022-04-28 12:16:47,639 INFO L272 TraceCheckUtils]: 55: Hoare triple {4041#(and (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~k~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:16:47,639 INFO L290 TraceCheckUtils]: 56: Hoare triple {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4055#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:16:47,639 INFO L290 TraceCheckUtils]: 57: Hoare triple {4055#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3880#false} is VALID [2022-04-28 12:16:47,639 INFO L290 TraceCheckUtils]: 58: Hoare triple {3880#false} assume !false; {3880#false} is VALID [2022-04-28 12:16:47,640 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:16:47,640 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:17:04,141 INFO L290 TraceCheckUtils]: 58: Hoare triple {3880#false} assume !false; {3880#false} is VALID [2022-04-28 12:17:04,141 INFO L290 TraceCheckUtils]: 57: Hoare triple {4055#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3880#false} is VALID [2022-04-28 12:17:04,142 INFO L290 TraceCheckUtils]: 56: Hoare triple {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4055#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:17:04,143 INFO L272 TraceCheckUtils]: 55: Hoare triple {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4051#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:17:04,143 INFO L290 TraceCheckUtils]: 54: Hoare triple {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:17:04,144 INFO L290 TraceCheckUtils]: 53: Hoare triple {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:17:04,144 INFO L290 TraceCheckUtils]: 52: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {4071#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:17:04,145 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #92#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,146 INFO L290 TraceCheckUtils]: 50: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,146 INFO L290 TraceCheckUtils]: 49: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,146 INFO L290 TraceCheckUtils]: 48: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,146 INFO L272 TraceCheckUtils]: 47: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:17:04,147 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #90#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,147 INFO L290 TraceCheckUtils]: 45: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,148 INFO L290 TraceCheckUtils]: 44: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,148 INFO L290 TraceCheckUtils]: 43: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,148 INFO L272 TraceCheckUtils]: 42: Hoare triple {3971#(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)); {3879#true} is VALID [2022-04-28 12:17:04,149 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #88#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,149 INFO L290 TraceCheckUtils]: 40: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,149 INFO L290 TraceCheckUtils]: 39: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,149 INFO L290 TraceCheckUtils]: 38: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,149 INFO L272 TraceCheckUtils]: 37: Hoare triple {3971#(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)); {3879#true} is VALID [2022-04-28 12:17:04,150 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3879#true} {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #86#return; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,150 INFO L290 TraceCheckUtils]: 35: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,150 INFO L290 TraceCheckUtils]: 34: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,150 INFO L290 TraceCheckUtils]: 33: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,150 INFO L272 TraceCheckUtils]: 32: Hoare triple {3971#(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)); {3879#true} is VALID [2022-04-28 12:17:04,151 INFO L290 TraceCheckUtils]: 31: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,151 INFO L290 TraceCheckUtils]: 30: Hoare triple {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,152 INFO L290 TraceCheckUtils]: 29: Hoare triple {3879#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {3971#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 12:17:04,152 INFO L290 TraceCheckUtils]: 28: Hoare triple {3879#true} assume !!(#t~post6 < 100);havoc #t~post6; {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L290 TraceCheckUtils]: 27: Hoare triple {3879#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {3879#true} {3879#true} #84#return; {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L290 TraceCheckUtils]: 25: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L290 TraceCheckUtils]: 24: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L272 TraceCheckUtils]: 22: Hoare triple {3879#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:17:04,152 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3879#true} {3879#true} #82#return; {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 20: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 19: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 18: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L272 TraceCheckUtils]: 17: Hoare triple {3879#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 16: Hoare triple {3879#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3879#true} {3879#true} #80#return; {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 14: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 13: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,153 INFO L290 TraceCheckUtils]: 12: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L272 TraceCheckUtils]: 11: Hoare triple {3879#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3879#true} {3879#true} #78#return; {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L290 TraceCheckUtils]: 8: Hoare triple {3879#true} assume !(0 == ~cond); {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L290 TraceCheckUtils]: 7: Hoare triple {3879#true} ~cond := #in~cond; {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L272 TraceCheckUtils]: 6: Hoare triple {3879#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {3879#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L272 TraceCheckUtils]: 4: Hoare triple {3879#true} call #t~ret8 := main(); {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3879#true} {3879#true} #98#return; {3879#true} is VALID [2022-04-28 12:17:04,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {3879#true} assume true; {3879#true} is VALID [2022-04-28 12:17:04,155 INFO L290 TraceCheckUtils]: 1: Hoare triple {3879#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; {3879#true} is VALID [2022-04-28 12:17:04,155 INFO L272 TraceCheckUtils]: 0: Hoare triple {3879#true} call ULTIMATE.init(); {3879#true} is VALID [2022-04-28 12:17:04,155 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 3 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:04,155 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:17:04,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [306533090] [2022-04-28 12:17:04,155 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:17:04,155 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1068611907] [2022-04-28 12:17:04,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1068611907] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:17:04,156 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:17:04,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 7 [2022-04-28 12:17:04,158 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:17:04,159 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2002425336] [2022-04-28 12:17:04,159 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2002425336] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:17:04,159 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:17:04,159 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:17:04,159 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1014608515] [2022-04-28 12:17:04,159 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:17:04,159 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 59 [2022-04-28 12:17:04,161 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:17:04,161 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:17:04,213 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:04,213 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:17:04,214 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:04,214 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:17:04,214 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 12:17:04,214 INFO L87 Difference]: Start difference. First operand 66 states and 82 transitions. Second operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:17:04,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:04,731 INFO L93 Difference]: Finished difference Result 96 states and 131 transitions. [2022-04-28 12:17:04,732 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:17:04,732 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) Word has length 59 [2022-04-28 12:17:04,732 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:17:04,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:17:04,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 78 transitions. [2022-04-28 12:17:04,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:17:04,735 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 78 transitions. [2022-04-28 12:17:04,735 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 78 transitions. [2022-04-28 12:17:04,828 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:17:04,830 INFO L225 Difference]: With dead ends: 96 [2022-04-28 12:17:04,830 INFO L226 Difference]: Without dead ends: 94 [2022-04-28 12:17:04,830 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 110 SyntacticMatches, 2 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:17:04,831 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 9 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 88 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 208 SdHoareTripleChecker+Invalid, 89 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 88 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:17:04,831 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 208 Invalid, 89 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:17:04,831 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-04-28 12:17:04,938 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 84. [2022-04-28 12:17:04,938 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:17:04,940 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:04,940 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:04,941 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:04,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:04,951 INFO L93 Difference]: Finished difference Result 94 states and 129 transitions. [2022-04-28 12:17:04,952 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 129 transitions. [2022-04-28 12:17:04,952 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:04,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:04,954 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 94 states. [2022-04-28 12:17:04,954 INFO L87 Difference]: Start difference. First operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 94 states. [2022-04-28 12:17:04,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:04,957 INFO L93 Difference]: Finished difference Result 94 states and 129 transitions. [2022-04-28 12:17:04,958 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 129 transitions. [2022-04-28 12:17:04,959 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:04,959 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:04,960 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:17:04,960 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:17:04,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 49 states have (on average 1.2448979591836735) internal successors, (61), 52 states have internal predecessors, (61), 26 states have call successors, (26), 9 states have call predecessors, (26), 8 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:04,962 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 111 transitions. [2022-04-28 12:17:04,962 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 111 transitions. Word has length 59 [2022-04-28 12:17:04,962 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:17:04,963 INFO L495 AbstractCegarLoop]: Abstraction has 84 states and 111 transitions. [2022-04-28 12:17:04,963 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.5) internal successors, (21), 5 states have internal predecessors, (21), 3 states have call successors, (11), 2 states have call predecessors, (11), 1 states have return successors, (9), 2 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 12:17:04,963 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 84 states and 111 transitions. [2022-04-28 12:17:05,127 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:17:05,127 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 111 transitions. [2022-04-28 12:17:05,128 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2022-04-28 12:17:05,128 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:17:05,128 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:17:05,152 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:17:05,328 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:17:05,329 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:17:05,329 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:17:05,329 INFO L85 PathProgramCache]: Analyzing trace with hash 35160305, now seen corresponding path program 1 times [2022-04-28 12:17:05,329 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:05,329 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1452723530] [2022-04-28 12:17:05,330 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:17:05,330 INFO L85 PathProgramCache]: Analyzing trace with hash 35160305, now seen corresponding path program 2 times [2022-04-28 12:17:05,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:17:05,330 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [427455179] [2022-04-28 12:17:05,330 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:17:05,330 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:17:05,354 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:17:05,355 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [633328857] [2022-04-28 12:17:05,355 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:17:05,355 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:17:05,355 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:17:05,360 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:17:05,376 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:17:05,460 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:17:05,460 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:17:05,461 INFO L263 TraceCheckSpWp]: Trace formula consists of 191 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 12:17:05,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:17:05,481 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:17:05,828 INFO L272 TraceCheckUtils]: 0: Hoare triple {4789#true} call ULTIMATE.init(); {4789#true} is VALID [2022-04-28 12:17:05,829 INFO L290 TraceCheckUtils]: 1: Hoare triple {4789#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; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,830 INFO L290 TraceCheckUtils]: 2: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,830 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4797#(<= ~counter~0 0)} {4789#true} #98#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,831 INFO L272 TraceCheckUtils]: 4: Hoare triple {4797#(<= ~counter~0 0)} call #t~ret8 := main(); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {4797#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,832 INFO L272 TraceCheckUtils]: 6: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,832 INFO L290 TraceCheckUtils]: 7: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,832 INFO L290 TraceCheckUtils]: 8: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,833 INFO L290 TraceCheckUtils]: 9: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,833 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #78#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,834 INFO L272 TraceCheckUtils]: 11: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,834 INFO L290 TraceCheckUtils]: 12: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,835 INFO L290 TraceCheckUtils]: 14: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,835 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #80#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,836 INFO L290 TraceCheckUtils]: 16: Hoare triple {4797#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,836 INFO L272 TraceCheckUtils]: 17: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,837 INFO L290 TraceCheckUtils]: 19: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,837 INFO L290 TraceCheckUtils]: 20: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,838 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #82#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,838 INFO L272 TraceCheckUtils]: 22: Hoare triple {4797#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,839 INFO L290 TraceCheckUtils]: 23: Hoare triple {4797#(<= ~counter~0 0)} ~cond := #in~cond; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,839 INFO L290 TraceCheckUtils]: 24: Hoare triple {4797#(<= ~counter~0 0)} assume !(0 == ~cond); {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,839 INFO L290 TraceCheckUtils]: 25: Hoare triple {4797#(<= ~counter~0 0)} assume true; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,840 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4797#(<= ~counter~0 0)} {4797#(<= ~counter~0 0)} #84#return; {4797#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:05,840 INFO L290 TraceCheckUtils]: 27: Hoare triple {4797#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4876#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:05,841 INFO L290 TraceCheckUtils]: 28: Hoare triple {4876#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {4876#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:05,841 INFO L290 TraceCheckUtils]: 29: Hoare triple {4876#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {4876#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:05,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {4876#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,842 INFO L290 TraceCheckUtils]: 31: Hoare triple {4886#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,843 INFO L272 TraceCheckUtils]: 32: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,843 INFO L290 TraceCheckUtils]: 33: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,843 INFO L290 TraceCheckUtils]: 34: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,844 INFO L290 TraceCheckUtils]: 35: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,844 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #86#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,845 INFO L272 TraceCheckUtils]: 37: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,845 INFO L290 TraceCheckUtils]: 38: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,846 INFO L290 TraceCheckUtils]: 39: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,846 INFO L290 TraceCheckUtils]: 40: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,847 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #88#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,847 INFO L272 TraceCheckUtils]: 42: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,848 INFO L290 TraceCheckUtils]: 43: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,848 INFO L290 TraceCheckUtils]: 44: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,848 INFO L290 TraceCheckUtils]: 45: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,849 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #90#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,850 INFO L272 TraceCheckUtils]: 47: Hoare triple {4886#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,850 INFO L290 TraceCheckUtils]: 48: Hoare triple {4886#(<= ~counter~0 2)} ~cond := #in~cond; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,851 INFO L290 TraceCheckUtils]: 49: Hoare triple {4886#(<= ~counter~0 2)} assume !(0 == ~cond); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,851 INFO L290 TraceCheckUtils]: 50: Hoare triple {4886#(<= ~counter~0 2)} assume true; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,852 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4886#(<= ~counter~0 2)} {4886#(<= ~counter~0 2)} #92#return; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,852 INFO L290 TraceCheckUtils]: 52: Hoare triple {4886#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,853 INFO L290 TraceCheckUtils]: 53: Hoare triple {4886#(<= ~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; {4886#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:05,853 INFO L290 TraceCheckUtils]: 54: Hoare triple {4886#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4959#(<= |main_#t~post6| 2)} is VALID [2022-04-28 12:17:05,853 INFO L290 TraceCheckUtils]: 55: Hoare triple {4959#(<= |main_#t~post6| 2)} assume !(#t~post6 < 100);havoc #t~post6; {4790#false} is VALID [2022-04-28 12:17:05,854 INFO L272 TraceCheckUtils]: 56: Hoare triple {4790#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {4790#false} is VALID [2022-04-28 12:17:05,854 INFO L290 TraceCheckUtils]: 57: Hoare triple {4790#false} ~cond := #in~cond; {4790#false} is VALID [2022-04-28 12:17:05,854 INFO L290 TraceCheckUtils]: 58: Hoare triple {4790#false} assume 0 == ~cond; {4790#false} is VALID [2022-04-28 12:17:05,854 INFO L290 TraceCheckUtils]: 59: Hoare triple {4790#false} assume !false; {4790#false} is VALID [2022-04-28 12:17:05,854 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:05,854 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:17:06,193 INFO L290 TraceCheckUtils]: 59: Hoare triple {4790#false} assume !false; {4790#false} is VALID [2022-04-28 12:17:06,193 INFO L290 TraceCheckUtils]: 58: Hoare triple {4790#false} assume 0 == ~cond; {4790#false} is VALID [2022-04-28 12:17:06,193 INFO L290 TraceCheckUtils]: 57: Hoare triple {4790#false} ~cond := #in~cond; {4790#false} is VALID [2022-04-28 12:17:06,193 INFO L272 TraceCheckUtils]: 56: Hoare triple {4790#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {4790#false} is VALID [2022-04-28 12:17:06,194 INFO L290 TraceCheckUtils]: 55: Hoare triple {4987#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {4790#false} is VALID [2022-04-28 12:17:06,194 INFO L290 TraceCheckUtils]: 54: Hoare triple {4991#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4987#(< |main_#t~post6| 100)} is VALID [2022-04-28 12:17:06,195 INFO L290 TraceCheckUtils]: 53: Hoare triple {4991#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,195 INFO L290 TraceCheckUtils]: 52: Hoare triple {4991#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,196 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {4789#true} {4991#(< ~counter~0 100)} #92#return; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,196 INFO L290 TraceCheckUtils]: 50: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,196 INFO L290 TraceCheckUtils]: 49: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,196 INFO L290 TraceCheckUtils]: 48: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,197 INFO L272 TraceCheckUtils]: 47: Hoare triple {4991#(< ~counter~0 100)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,198 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4789#true} {4991#(< ~counter~0 100)} #90#return; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,206 INFO L290 TraceCheckUtils]: 45: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,206 INFO L290 TraceCheckUtils]: 44: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,206 INFO L290 TraceCheckUtils]: 43: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,207 INFO L272 TraceCheckUtils]: 42: Hoare triple {4991#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,211 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4789#true} {4991#(< ~counter~0 100)} #88#return; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,211 INFO L290 TraceCheckUtils]: 40: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,211 INFO L290 TraceCheckUtils]: 39: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,211 INFO L290 TraceCheckUtils]: 38: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,211 INFO L272 TraceCheckUtils]: 37: Hoare triple {4991#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,212 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4789#true} {4991#(< ~counter~0 100)} #86#return; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,212 INFO L290 TraceCheckUtils]: 35: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,212 INFO L290 TraceCheckUtils]: 34: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,213 INFO L290 TraceCheckUtils]: 33: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,213 INFO L272 TraceCheckUtils]: 32: Hoare triple {4991#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,213 INFO L290 TraceCheckUtils]: 31: Hoare triple {4991#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,214 INFO L290 TraceCheckUtils]: 30: Hoare triple {5064#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4991#(< ~counter~0 100)} is VALID [2022-04-28 12:17:06,214 INFO L290 TraceCheckUtils]: 29: Hoare triple {5064#(< ~counter~0 99)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5064#(< ~counter~0 99)} is VALID [2022-04-28 12:17:06,214 INFO L290 TraceCheckUtils]: 28: Hoare triple {5064#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {5064#(< ~counter~0 99)} is VALID [2022-04-28 12:17:06,215 INFO L290 TraceCheckUtils]: 27: Hoare triple {5074#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5064#(< ~counter~0 99)} is VALID [2022-04-28 12:17:06,215 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {4789#true} {5074#(< ~counter~0 98)} #84#return; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,216 INFO L290 TraceCheckUtils]: 25: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,216 INFO L290 TraceCheckUtils]: 24: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,216 INFO L290 TraceCheckUtils]: 23: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,216 INFO L272 TraceCheckUtils]: 22: Hoare triple {5074#(< ~counter~0 98)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,216 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {4789#true} {5074#(< ~counter~0 98)} #82#return; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,216 INFO L290 TraceCheckUtils]: 20: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,217 INFO L290 TraceCheckUtils]: 19: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,217 INFO L290 TraceCheckUtils]: 18: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,217 INFO L272 TraceCheckUtils]: 17: Hoare triple {5074#(< ~counter~0 98)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,217 INFO L290 TraceCheckUtils]: 16: Hoare triple {5074#(< ~counter~0 98)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,218 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4789#true} {5074#(< ~counter~0 98)} #80#return; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,218 INFO L290 TraceCheckUtils]: 14: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,218 INFO L290 TraceCheckUtils]: 13: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,218 INFO L272 TraceCheckUtils]: 11: Hoare triple {5074#(< ~counter~0 98)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,219 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4789#true} {5074#(< ~counter~0 98)} #78#return; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {4789#true} assume true; {4789#true} is VALID [2022-04-28 12:17:06,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {4789#true} assume !(0 == ~cond); {4789#true} is VALID [2022-04-28 12:17:06,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {4789#true} ~cond := #in~cond; {4789#true} is VALID [2022-04-28 12:17:06,219 INFO L272 TraceCheckUtils]: 6: Hoare triple {5074#(< ~counter~0 98)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4789#true} is VALID [2022-04-28 12:17:06,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {5074#(< ~counter~0 98)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,220 INFO L272 TraceCheckUtils]: 4: Hoare triple {5074#(< ~counter~0 98)} call #t~ret8 := main(); {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,220 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5074#(< ~counter~0 98)} {4789#true} #98#return; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {5074#(< ~counter~0 98)} assume true; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,221 INFO L290 TraceCheckUtils]: 1: Hoare triple {4789#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; {5074#(< ~counter~0 98)} is VALID [2022-04-28 12:17:06,221 INFO L272 TraceCheckUtils]: 0: Hoare triple {4789#true} call ULTIMATE.init(); {4789#true} is VALID [2022-04-28 12:17:06,222 INFO L134 CoverageAnalysis]: Checked inductivity of 58 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:06,222 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:17:06,222 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [427455179] [2022-04-28 12:17:06,222 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:17:06,222 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [633328857] [2022-04-28 12:17:06,222 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [633328857] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:17:06,223 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:17:06,223 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 12:17:06,223 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:17:06,223 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1452723530] [2022-04-28 12:17:06,223 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1452723530] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:17:06,223 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:17:06,223 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:17:06,223 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [42567917] [2022-04-28 12:17:06,223 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:17:06,224 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 60 [2022-04-28 12:17:06,226 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:17:06,226 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:06,271 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:06,271 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:17:06,271 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:06,272 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:17:06,272 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 12:17:06,272 INFO L87 Difference]: Start difference. First operand 84 states and 111 transitions. Second operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:06,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:06,550 INFO L93 Difference]: Finished difference Result 111 states and 135 transitions. [2022-04-28 12:17:06,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 12:17:06,551 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 60 [2022-04-28 12:17:06,551 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:17:06,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:06,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 76 transitions. [2022-04-28 12:17:06,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:06,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 76 transitions. [2022-04-28 12:17:06,554 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 76 transitions. [2022-04-28 12:17:06,618 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:17:06,621 INFO L225 Difference]: With dead ends: 111 [2022-04-28 12:17:06,632 INFO L226 Difference]: Without dead ends: 103 [2022-04-28 12:17:06,632 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 111 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:17:06,633 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 8 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:17:06,633 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 138 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:17:06,633 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-04-28 12:17:06,752 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 103. [2022-04-28 12:17:06,752 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:17:06,753 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:06,753 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:06,753 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:06,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:06,756 INFO L93 Difference]: Finished difference Result 103 states and 126 transitions. [2022-04-28 12:17:06,756 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 126 transitions. [2022-04-28 12:17:06,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:06,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:06,757 INFO L74 IsIncluded]: Start isIncluded. First operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 103 states. [2022-04-28 12:17:06,757 INFO L87 Difference]: Start difference. First operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) Second operand 103 states. [2022-04-28 12:17:06,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:06,760 INFO L93 Difference]: Finished difference Result 103 states and 126 transitions. [2022-04-28 12:17:06,760 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 126 transitions. [2022-04-28 12:17:06,760 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:06,760 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:06,760 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:17:06,761 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:17:06,761 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 103 states, 64 states have (on average 1.1875) internal successors, (76), 67 states have internal predecessors, (76), 26 states have call successors, (26), 13 states have call predecessors, (26), 12 states have return successors, (24), 22 states have call predecessors, (24), 24 states have call successors, (24) [2022-04-28 12:17:06,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 126 transitions. [2022-04-28 12:17:06,764 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 126 transitions. Word has length 60 [2022-04-28 12:17:06,764 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:17:06,764 INFO L495 AbstractCegarLoop]: Abstraction has 103 states and 126 transitions. [2022-04-28 12:17:06,764 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 5 states have internal predecessors, (22), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:06,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 103 states and 126 transitions. [2022-04-28 12:17:06,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:06,927 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 126 transitions. [2022-04-28 12:17:06,928 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-28 12:17:06,928 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:17:06,928 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:17:06,953 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:17:07,128 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:17:07,129 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:17:07,129 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:17:07,129 INFO L85 PathProgramCache]: Analyzing trace with hash 1088000375, now seen corresponding path program 1 times [2022-04-28 12:17:07,129 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:07,129 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [611504629] [2022-04-28 12:17:07,130 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:17:07,130 INFO L85 PathProgramCache]: Analyzing trace with hash 1088000375, now seen corresponding path program 2 times [2022-04-28 12:17:07,130 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:17:07,130 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2002196414] [2022-04-28 12:17:07,130 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:17:07,130 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:17:07,144 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:17:07,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2021803108] [2022-04-28 12:17:07,145 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:17:07,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:17:07,145 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:17:07,160 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:17:07,195 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:17:07,225 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:17:07,225 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:17:07,226 INFO L263 TraceCheckSpWp]: Trace formula consists of 193 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 12:17:07,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:17:07,240 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:17:07,520 INFO L272 TraceCheckUtils]: 0: Hoare triple {5794#true} call ULTIMATE.init(); {5794#true} is VALID [2022-04-28 12:17:07,520 INFO L290 TraceCheckUtils]: 1: Hoare triple {5794#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; {5794#true} is VALID [2022-04-28 12:17:07,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,520 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5794#true} {5794#true} #98#return; {5794#true} is VALID [2022-04-28 12:17:07,520 INFO L272 TraceCheckUtils]: 4: Hoare triple {5794#true} call #t~ret8 := main(); {5794#true} is VALID [2022-04-28 12:17:07,520 INFO L290 TraceCheckUtils]: 5: Hoare triple {5794#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5794#true} is VALID [2022-04-28 12:17:07,520 INFO L272 TraceCheckUtils]: 6: Hoare triple {5794#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,521 INFO L290 TraceCheckUtils]: 7: Hoare triple {5794#true} ~cond := #in~cond; {5820#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:17:07,521 INFO L290 TraceCheckUtils]: 8: Hoare triple {5820#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:17:07,522 INFO L290 TraceCheckUtils]: 9: Hoare triple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:17:07,522 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} {5794#true} #78#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-28 12:17:07,527 INFO L272 TraceCheckUtils]: 11: Hoare triple {5831#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,527 INFO L290 TraceCheckUtils]: 13: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,527 INFO L290 TraceCheckUtils]: 14: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,528 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5794#true} {5831#(<= 1 main_~x~0)} #80#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-28 12:17:07,528 INFO L290 TraceCheckUtils]: 16: Hoare triple {5831#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,528 INFO L272 TraceCheckUtils]: 17: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,529 INFO L290 TraceCheckUtils]: 18: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,529 INFO L290 TraceCheckUtils]: 19: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,529 INFO L290 TraceCheckUtils]: 20: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,529 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #82#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,529 INFO L272 TraceCheckUtils]: 22: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,529 INFO L290 TraceCheckUtils]: 23: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,530 INFO L290 TraceCheckUtils]: 24: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,530 INFO L290 TraceCheckUtils]: 25: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,530 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #84#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,530 INFO L290 TraceCheckUtils]: 27: Hoare triple {5850#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,531 INFO L290 TraceCheckUtils]: 28: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,531 INFO L290 TraceCheckUtils]: 29: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,532 INFO L290 TraceCheckUtils]: 30: Hoare triple {5890#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,532 INFO L290 TraceCheckUtils]: 31: Hoare triple {5890#(<= 1 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,532 INFO L272 TraceCheckUtils]: 32: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,532 INFO L290 TraceCheckUtils]: 33: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,532 INFO L290 TraceCheckUtils]: 34: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,532 INFO L290 TraceCheckUtils]: 35: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,533 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #86#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,533 INFO L272 TraceCheckUtils]: 37: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,533 INFO L290 TraceCheckUtils]: 38: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,533 INFO L290 TraceCheckUtils]: 39: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,533 INFO L290 TraceCheckUtils]: 40: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,534 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #88#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,534 INFO L272 TraceCheckUtils]: 42: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,534 INFO L290 TraceCheckUtils]: 43: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,534 INFO L290 TraceCheckUtils]: 44: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,534 INFO L290 TraceCheckUtils]: 45: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,535 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #90#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,535 INFO L272 TraceCheckUtils]: 47: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,535 INFO L290 TraceCheckUtils]: 48: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,535 INFO L290 TraceCheckUtils]: 49: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,536 INFO L290 TraceCheckUtils]: 50: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,536 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #92#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,536 INFO L290 TraceCheckUtils]: 52: Hoare triple {5890#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,537 INFO L290 TraceCheckUtils]: 53: Hoare triple {5890#(<= 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; {5963#(<= 1 main_~b~0)} is VALID [2022-04-28 12:17:07,537 INFO L290 TraceCheckUtils]: 54: Hoare triple {5963#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-28 12:17:07,538 INFO L290 TraceCheckUtils]: 55: Hoare triple {5963#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-28 12:17:07,538 INFO L290 TraceCheckUtils]: 56: Hoare triple {5963#(<= 1 main_~b~0)} assume !(0 != ~b~0); {5795#false} is VALID [2022-04-28 12:17:07,538 INFO L272 TraceCheckUtils]: 57: Hoare triple {5795#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {5795#false} is VALID [2022-04-28 12:17:07,538 INFO L290 TraceCheckUtils]: 58: Hoare triple {5795#false} ~cond := #in~cond; {5795#false} is VALID [2022-04-28 12:17:07,538 INFO L290 TraceCheckUtils]: 59: Hoare triple {5795#false} assume 0 == ~cond; {5795#false} is VALID [2022-04-28 12:17:07,538 INFO L290 TraceCheckUtils]: 60: Hoare triple {5795#false} assume !false; {5795#false} is VALID [2022-04-28 12:17:07,539 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 12:17:07,539 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:17:07,927 INFO L290 TraceCheckUtils]: 60: Hoare triple {5795#false} assume !false; {5795#false} is VALID [2022-04-28 12:17:07,927 INFO L290 TraceCheckUtils]: 59: Hoare triple {5795#false} assume 0 == ~cond; {5795#false} is VALID [2022-04-28 12:17:07,927 INFO L290 TraceCheckUtils]: 58: Hoare triple {5795#false} ~cond := #in~cond; {5795#false} is VALID [2022-04-28 12:17:07,927 INFO L272 TraceCheckUtils]: 57: Hoare triple {5795#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {5795#false} is VALID [2022-04-28 12:17:07,928 INFO L290 TraceCheckUtils]: 56: Hoare triple {5963#(<= 1 main_~b~0)} assume !(0 != ~b~0); {5795#false} is VALID [2022-04-28 12:17:07,928 INFO L290 TraceCheckUtils]: 55: Hoare triple {5963#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-28 12:17:07,928 INFO L290 TraceCheckUtils]: 54: Hoare triple {5963#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5963#(<= 1 main_~b~0)} is VALID [2022-04-28 12:17:07,929 INFO L290 TraceCheckUtils]: 53: Hoare triple {5890#(<= 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; {5963#(<= 1 main_~b~0)} is VALID [2022-04-28 12:17:07,929 INFO L290 TraceCheckUtils]: 52: Hoare triple {5890#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,930 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #92#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,931 INFO L290 TraceCheckUtils]: 50: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,931 INFO L290 TraceCheckUtils]: 49: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,931 INFO L290 TraceCheckUtils]: 48: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,931 INFO L272 TraceCheckUtils]: 47: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,932 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #90#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,932 INFO L290 TraceCheckUtils]: 45: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,932 INFO L290 TraceCheckUtils]: 44: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,932 INFO L290 TraceCheckUtils]: 43: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,932 INFO L272 TraceCheckUtils]: 42: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,933 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #88#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,933 INFO L290 TraceCheckUtils]: 40: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,933 INFO L290 TraceCheckUtils]: 39: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,933 INFO L290 TraceCheckUtils]: 38: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,933 INFO L272 TraceCheckUtils]: 37: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,934 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5794#true} {5890#(<= 1 main_~c~0)} #86#return; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,934 INFO L290 TraceCheckUtils]: 35: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,934 INFO L290 TraceCheckUtils]: 34: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,934 INFO L290 TraceCheckUtils]: 33: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,934 INFO L272 TraceCheckUtils]: 32: Hoare triple {5890#(<= 1 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,935 INFO L290 TraceCheckUtils]: 31: Hoare triple {5890#(<= 1 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,935 INFO L290 TraceCheckUtils]: 30: Hoare triple {5890#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,935 INFO L290 TraceCheckUtils]: 29: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {5890#(<= 1 main_~c~0)} is VALID [2022-04-28 12:17:07,936 INFO L290 TraceCheckUtils]: 28: Hoare triple {5850#(<= 1 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,936 INFO L290 TraceCheckUtils]: 27: Hoare triple {5850#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,937 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #84#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,937 INFO L290 TraceCheckUtils]: 25: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,937 INFO L290 TraceCheckUtils]: 24: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,937 INFO L290 TraceCheckUtils]: 23: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,937 INFO L272 TraceCheckUtils]: 22: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,938 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {5794#true} {5850#(<= 1 main_~a~0)} #82#return; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,938 INFO L290 TraceCheckUtils]: 20: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,938 INFO L290 TraceCheckUtils]: 19: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,938 INFO L290 TraceCheckUtils]: 18: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,938 INFO L272 TraceCheckUtils]: 17: Hoare triple {5850#(<= 1 main_~a~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,939 INFO L290 TraceCheckUtils]: 16: Hoare triple {5831#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {5850#(<= 1 main_~a~0)} is VALID [2022-04-28 12:17:07,939 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5794#true} {5831#(<= 1 main_~x~0)} #80#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-28 12:17:07,939 INFO L290 TraceCheckUtils]: 14: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,939 INFO L290 TraceCheckUtils]: 13: Hoare triple {5794#true} assume !(0 == ~cond); {5794#true} is VALID [2022-04-28 12:17:07,939 INFO L290 TraceCheckUtils]: 12: Hoare triple {5794#true} ~cond := #in~cond; {5794#true} is VALID [2022-04-28 12:17:07,939 INFO L272 TraceCheckUtils]: 11: Hoare triple {5831#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,940 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} {5794#true} #78#return; {5831#(<= 1 main_~x~0)} is VALID [2022-04-28 12:17:07,940 INFO L290 TraceCheckUtils]: 9: Hoare triple {5824#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:17:07,941 INFO L290 TraceCheckUtils]: 8: Hoare triple {6144#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {5824#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:17:07,941 INFO L290 TraceCheckUtils]: 7: Hoare triple {5794#true} ~cond := #in~cond; {6144#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 12:17:07,941 INFO L272 TraceCheckUtils]: 6: Hoare triple {5794#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5794#true} is VALID [2022-04-28 12:17:07,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {5794#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5794#true} is VALID [2022-04-28 12:17:07,942 INFO L272 TraceCheckUtils]: 4: Hoare triple {5794#true} call #t~ret8 := main(); {5794#true} is VALID [2022-04-28 12:17:07,942 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5794#true} {5794#true} #98#return; {5794#true} is VALID [2022-04-28 12:17:07,942 INFO L290 TraceCheckUtils]: 2: Hoare triple {5794#true} assume true; {5794#true} is VALID [2022-04-28 12:17:07,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {5794#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; {5794#true} is VALID [2022-04-28 12:17:07,942 INFO L272 TraceCheckUtils]: 0: Hoare triple {5794#true} call ULTIMATE.init(); {5794#true} is VALID [2022-04-28 12:17:07,942 INFO L134 CoverageAnalysis]: Checked inductivity of 59 backedges. 8 proven. 12 refuted. 0 times theorem prover too weak. 39 trivial. 0 not checked. [2022-04-28 12:17:07,942 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:17:07,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2002196414] [2022-04-28 12:17:07,943 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:17:07,943 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2021803108] [2022-04-28 12:17:07,943 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2021803108] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:17:07,943 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:17:07,943 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 12:17:07,943 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:17:07,944 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [611504629] [2022-04-28 12:17:07,944 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [611504629] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:17:07,944 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:17:07,944 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:17:07,944 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [969504046] [2022-04-28 12:17:07,944 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:17:07,946 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-28 12:17:07,946 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:17:07,946 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 12:17:07,983 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:07,983 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:17:07,983 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:07,984 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:17:07,984 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 12:17:07,985 INFO L87 Difference]: Start difference. First operand 103 states and 126 transitions. Second operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 12:17:09,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:09,860 INFO L93 Difference]: Finished difference Result 182 states and 256 transitions. [2022-04-28 12:17:09,860 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:17:09,860 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 61 [2022-04-28 12:17:09,860 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:17:09,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 12:17:09,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 147 transitions. [2022-04-28 12:17:09,868 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 12:17:09,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 147 transitions. [2022-04-28 12:17:09,872 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 147 transitions. [2022-04-28 12:17:10,061 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:17:10,065 INFO L225 Difference]: With dead ends: 182 [2022-04-28 12:17:10,065 INFO L226 Difference]: Without dead ends: 174 [2022-04-28 12:17:10,066 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:17:10,066 INFO L413 NwaCegarLoop]: 71 mSDtfsCounter, 59 mSDsluCounter, 246 mSDsCounter, 0 mSdLazyCounter, 161 mSolverCounterSat, 71 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 317 SdHoareTripleChecker+Invalid, 232 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 71 IncrementalHoareTripleChecker+Valid, 161 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:17:10,066 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 317 Invalid, 232 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [71 Valid, 161 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:17:10,067 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-28 12:17:10,374 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 146. [2022-04-28 12:17:10,374 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:17:10,375 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:10,375 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:10,376 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:10,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:10,394 INFO L93 Difference]: Finished difference Result 174 states and 246 transitions. [2022-04-28 12:17:10,394 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 246 transitions. [2022-04-28 12:17:10,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:10,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:10,402 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 174 states. [2022-04-28 12:17:10,402 INFO L87 Difference]: Start difference. First operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 174 states. [2022-04-28 12:17:10,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:10,409 INFO L93 Difference]: Finished difference Result 174 states and 246 transitions. [2022-04-28 12:17:10,409 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 246 transitions. [2022-04-28 12:17:10,410 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:10,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:10,410 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:17:10,410 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:17:10,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 90 states have (on average 1.2777777777777777) internal successors, (115), 94 states have internal predecessors, (115), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:10,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 199 transitions. [2022-04-28 12:17:10,415 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 199 transitions. Word has length 61 [2022-04-28 12:17:10,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:17:10,415 INFO L495 AbstractCegarLoop]: Abstraction has 146 states and 199 transitions. [2022-04-28 12:17:10,415 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.25) internal successors, (26), 7 states have internal predecessors, (26), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-28 12:17:10,416 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 146 states and 199 transitions. [2022-04-28 12:17:10,972 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 199 edges. 199 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:10,972 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 199 transitions. [2022-04-28 12:17:10,973 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2022-04-28 12:17:10,973 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:17:10,973 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:17:11,001 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:17:11,173 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:17:11,174 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:17:11,174 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:17:11,174 INFO L85 PathProgramCache]: Analyzing trace with hash 1537891564, now seen corresponding path program 1 times [2022-04-28 12:17:11,174 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:11,174 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [960506906] [2022-04-28 12:17:11,175 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:17:11,175 INFO L85 PathProgramCache]: Analyzing trace with hash 1537891564, now seen corresponding path program 2 times [2022-04-28 12:17:11,175 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:17:11,175 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1363262060] [2022-04-28 12:17:11,175 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:17:11,175 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:17:11,197 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:17:11,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1663400727] [2022-04-28 12:17:11,198 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:17:11,198 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:17:11,198 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:17:11,215 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:17:11,216 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:17:11,271 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:17:11,271 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:17:11,272 INFO L263 TraceCheckSpWp]: Trace formula consists of 200 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 12:17:11,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:17:11,290 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:17:11,697 INFO L272 TraceCheckUtils]: 0: Hoare triple {7186#true} call ULTIMATE.init(); {7186#true} is VALID [2022-04-28 12:17:11,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {7186#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; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,699 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7194#(<= ~counter~0 0)} {7186#true} #98#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,699 INFO L272 TraceCheckUtils]: 4: Hoare triple {7194#(<= ~counter~0 0)} call #t~ret8 := main(); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {7194#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,700 INFO L272 TraceCheckUtils]: 6: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,701 INFO L290 TraceCheckUtils]: 7: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,702 INFO L290 TraceCheckUtils]: 9: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,702 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #78#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,703 INFO L272 TraceCheckUtils]: 11: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,703 INFO L290 TraceCheckUtils]: 12: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,704 INFO L290 TraceCheckUtils]: 14: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,704 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #80#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,705 INFO L290 TraceCheckUtils]: 16: Hoare triple {7194#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,727 INFO L272 TraceCheckUtils]: 17: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,728 INFO L290 TraceCheckUtils]: 18: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,728 INFO L290 TraceCheckUtils]: 19: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,728 INFO L290 TraceCheckUtils]: 20: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,729 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #82#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,729 INFO L272 TraceCheckUtils]: 22: Hoare triple {7194#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,730 INFO L290 TraceCheckUtils]: 23: Hoare triple {7194#(<= ~counter~0 0)} ~cond := #in~cond; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,730 INFO L290 TraceCheckUtils]: 24: Hoare triple {7194#(<= ~counter~0 0)} assume !(0 == ~cond); {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {7194#(<= ~counter~0 0)} assume true; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,731 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7194#(<= ~counter~0 0)} {7194#(<= ~counter~0 0)} #84#return; {7194#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:11,732 INFO L290 TraceCheckUtils]: 27: Hoare triple {7194#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7273#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:11,732 INFO L290 TraceCheckUtils]: 28: Hoare triple {7273#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {7273#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:11,732 INFO L290 TraceCheckUtils]: 29: Hoare triple {7273#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7273#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:11,733 INFO L290 TraceCheckUtils]: 30: Hoare triple {7273#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,733 INFO L290 TraceCheckUtils]: 31: Hoare triple {7283#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,734 INFO L272 TraceCheckUtils]: 32: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,734 INFO L290 TraceCheckUtils]: 33: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,734 INFO L290 TraceCheckUtils]: 34: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,735 INFO L290 TraceCheckUtils]: 35: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,735 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #86#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,736 INFO L272 TraceCheckUtils]: 37: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,737 INFO L290 TraceCheckUtils]: 38: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,737 INFO L290 TraceCheckUtils]: 39: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,737 INFO L290 TraceCheckUtils]: 40: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,738 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #88#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,739 INFO L272 TraceCheckUtils]: 42: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,739 INFO L290 TraceCheckUtils]: 43: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,739 INFO L290 TraceCheckUtils]: 44: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,740 INFO L290 TraceCheckUtils]: 45: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,740 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #90#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,741 INFO L272 TraceCheckUtils]: 47: Hoare triple {7283#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,741 INFO L290 TraceCheckUtils]: 48: Hoare triple {7283#(<= ~counter~0 2)} ~cond := #in~cond; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,742 INFO L290 TraceCheckUtils]: 49: Hoare triple {7283#(<= ~counter~0 2)} assume !(0 == ~cond); {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,742 INFO L290 TraceCheckUtils]: 50: Hoare triple {7283#(<= ~counter~0 2)} assume true; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,743 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {7283#(<= ~counter~0 2)} {7283#(<= ~counter~0 2)} #92#return; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,743 INFO L290 TraceCheckUtils]: 52: Hoare triple {7283#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7283#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:11,744 INFO L290 TraceCheckUtils]: 53: Hoare triple {7283#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7353#(<= |main_#t~post7| 2)} is VALID [2022-04-28 12:17:11,744 INFO L290 TraceCheckUtils]: 54: Hoare triple {7353#(<= |main_#t~post7| 2)} assume !(#t~post7 < 100);havoc #t~post7; {7187#false} is VALID [2022-04-28 12:17:11,744 INFO L290 TraceCheckUtils]: 55: Hoare triple {7187#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; {7187#false} is VALID [2022-04-28 12:17:11,744 INFO L290 TraceCheckUtils]: 56: Hoare triple {7187#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7187#false} is VALID [2022-04-28 12:17:11,745 INFO L290 TraceCheckUtils]: 57: Hoare triple {7187#false} assume !(#t~post6 < 100);havoc #t~post6; {7187#false} is VALID [2022-04-28 12:17:11,745 INFO L272 TraceCheckUtils]: 58: Hoare triple {7187#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {7187#false} is VALID [2022-04-28 12:17:11,745 INFO L290 TraceCheckUtils]: 59: Hoare triple {7187#false} ~cond := #in~cond; {7187#false} is VALID [2022-04-28 12:17:11,745 INFO L290 TraceCheckUtils]: 60: Hoare triple {7187#false} assume 0 == ~cond; {7187#false} is VALID [2022-04-28 12:17:11,745 INFO L290 TraceCheckUtils]: 61: Hoare triple {7187#false} assume !false; {7187#false} is VALID [2022-04-28 12:17:11,745 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:11,745 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:17:12,128 INFO L290 TraceCheckUtils]: 61: Hoare triple {7187#false} assume !false; {7187#false} is VALID [2022-04-28 12:17:12,129 INFO L290 TraceCheckUtils]: 60: Hoare triple {7187#false} assume 0 == ~cond; {7187#false} is VALID [2022-04-28 12:17:12,129 INFO L290 TraceCheckUtils]: 59: Hoare triple {7187#false} ~cond := #in~cond; {7187#false} is VALID [2022-04-28 12:17:12,129 INFO L272 TraceCheckUtils]: 58: Hoare triple {7187#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {7187#false} is VALID [2022-04-28 12:17:12,129 INFO L290 TraceCheckUtils]: 57: Hoare triple {7187#false} assume !(#t~post6 < 100);havoc #t~post6; {7187#false} is VALID [2022-04-28 12:17:12,129 INFO L290 TraceCheckUtils]: 56: Hoare triple {7187#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7187#false} is VALID [2022-04-28 12:17:12,129 INFO L290 TraceCheckUtils]: 55: Hoare triple {7187#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; {7187#false} is VALID [2022-04-28 12:17:12,130 INFO L290 TraceCheckUtils]: 54: Hoare triple {7399#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {7187#false} is VALID [2022-04-28 12:17:12,131 INFO L290 TraceCheckUtils]: 53: Hoare triple {7403#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7399#(< |main_#t~post7| 100)} is VALID [2022-04-28 12:17:12,131 INFO L290 TraceCheckUtils]: 52: Hoare triple {7403#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,132 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {7186#true} {7403#(< ~counter~0 100)} #92#return; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,132 INFO L290 TraceCheckUtils]: 50: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,132 INFO L290 TraceCheckUtils]: 49: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,132 INFO L290 TraceCheckUtils]: 48: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,132 INFO L272 TraceCheckUtils]: 47: Hoare triple {7403#(< ~counter~0 100)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,133 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7186#true} {7403#(< ~counter~0 100)} #90#return; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,133 INFO L290 TraceCheckUtils]: 45: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,133 INFO L290 TraceCheckUtils]: 44: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,133 INFO L290 TraceCheckUtils]: 43: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,133 INFO L272 TraceCheckUtils]: 42: Hoare triple {7403#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,134 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7186#true} {7403#(< ~counter~0 100)} #88#return; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,134 INFO L290 TraceCheckUtils]: 40: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,134 INFO L290 TraceCheckUtils]: 39: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,134 INFO L290 TraceCheckUtils]: 38: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,135 INFO L272 TraceCheckUtils]: 37: Hoare triple {7403#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,135 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7186#true} {7403#(< ~counter~0 100)} #86#return; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,135 INFO L290 TraceCheckUtils]: 35: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,135 INFO L290 TraceCheckUtils]: 34: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,136 INFO L290 TraceCheckUtils]: 33: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,136 INFO L272 TraceCheckUtils]: 32: Hoare triple {7403#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,136 INFO L290 TraceCheckUtils]: 31: Hoare triple {7403#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,137 INFO L290 TraceCheckUtils]: 30: Hoare triple {7473#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7403#(< ~counter~0 100)} is VALID [2022-04-28 12:17:12,137 INFO L290 TraceCheckUtils]: 29: Hoare triple {7473#(< ~counter~0 99)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {7473#(< ~counter~0 99)} is VALID [2022-04-28 12:17:12,137 INFO L290 TraceCheckUtils]: 28: Hoare triple {7473#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {7473#(< ~counter~0 99)} is VALID [2022-04-28 12:17:12,138 INFO L290 TraceCheckUtils]: 27: Hoare triple {7483#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7473#(< ~counter~0 99)} is VALID [2022-04-28 12:17:12,139 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {7186#true} {7483#(< ~counter~0 98)} #84#return; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,139 INFO L290 TraceCheckUtils]: 25: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,139 INFO L290 TraceCheckUtils]: 24: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,140 INFO L290 TraceCheckUtils]: 23: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,144 INFO L272 TraceCheckUtils]: 22: Hoare triple {7483#(< ~counter~0 98)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,145 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {7186#true} {7483#(< ~counter~0 98)} #82#return; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,145 INFO L290 TraceCheckUtils]: 20: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,145 INFO L290 TraceCheckUtils]: 19: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,146 INFO L272 TraceCheckUtils]: 17: Hoare triple {7483#(< ~counter~0 98)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,146 INFO L290 TraceCheckUtils]: 16: Hoare triple {7483#(< ~counter~0 98)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,146 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7186#true} {7483#(< ~counter~0 98)} #80#return; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,147 INFO L290 TraceCheckUtils]: 14: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,147 INFO L272 TraceCheckUtils]: 11: Hoare triple {7483#(< ~counter~0 98)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7186#true} {7483#(< ~counter~0 98)} #78#return; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {7186#true} assume true; {7186#true} is VALID [2022-04-28 12:17:12,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {7186#true} assume !(0 == ~cond); {7186#true} is VALID [2022-04-28 12:17:12,148 INFO L290 TraceCheckUtils]: 7: Hoare triple {7186#true} ~cond := #in~cond; {7186#true} is VALID [2022-04-28 12:17:12,148 INFO L272 TraceCheckUtils]: 6: Hoare triple {7483#(< ~counter~0 98)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7186#true} is VALID [2022-04-28 12:17:12,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {7483#(< ~counter~0 98)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,149 INFO L272 TraceCheckUtils]: 4: Hoare triple {7483#(< ~counter~0 98)} call #t~ret8 := main(); {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,149 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7483#(< ~counter~0 98)} {7186#true} #98#return; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,149 INFO L290 TraceCheckUtils]: 2: Hoare triple {7483#(< ~counter~0 98)} assume true; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {7186#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; {7483#(< ~counter~0 98)} is VALID [2022-04-28 12:17:12,150 INFO L272 TraceCheckUtils]: 0: Hoare triple {7186#true} call ULTIMATE.init(); {7186#true} is VALID [2022-04-28 12:17:12,151 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 10 proven. 2 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:12,152 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:17:12,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1363262060] [2022-04-28 12:17:12,152 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:17:12,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1663400727] [2022-04-28 12:17:12,152 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1663400727] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:17:12,152 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:17:12,152 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 12:17:12,152 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:17:12,152 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [960506906] [2022-04-28 12:17:12,153 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [960506906] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:17:12,153 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:17:12,153 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 12:17:12,153 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [506658648] [2022-04-28 12:17:12,153 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:17:12,153 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), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 62 [2022-04-28 12:17:12,153 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:17:12,153 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), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:12,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:12,313 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 12:17:12,314 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:12,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 12:17:12,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 12:17:12,314 INFO L87 Difference]: Start difference. First operand 146 states and 199 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:12,847 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:12,847 INFO L93 Difference]: Finished difference Result 183 states and 250 transitions. [2022-04-28 12:17:12,847 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 12:17:12,847 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), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 62 [2022-04-28 12:17:12,847 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:17:12,847 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), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:12,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 95 transitions. [2022-04-28 12:17:12,849 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), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:12,850 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 95 transitions. [2022-04-28 12:17:12,881 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 95 transitions. [2022-04-28 12:17:13,012 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:13,015 INFO L225 Difference]: With dead ends: 183 [2022-04-28 12:17:13,015 INFO L226 Difference]: Without dead ends: 146 [2022-04-28 12:17:13,015 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=41, Invalid=69, Unknown=0, NotChecked=0, Total=110 [2022-04-28 12:17:13,016 INFO L413 NwaCegarLoop]: 46 mSDtfsCounter, 16 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:17:13,016 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [16 Valid, 143 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:17:13,017 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 146 states. [2022-04-28 12:17:13,425 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 146 to 146. [2022-04-28 12:17:13,425 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:17:13,426 INFO L82 GeneralOperation]: Start isEquivalent. First operand 146 states. Second operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:13,427 INFO L74 IsIncluded]: Start isIncluded. First operand 146 states. Second operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:13,427 INFO L87 Difference]: Start difference. First operand 146 states. Second operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:13,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:13,444 INFO L93 Difference]: Finished difference Result 146 states and 198 transitions. [2022-04-28 12:17:13,444 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 198 transitions. [2022-04-28 12:17:13,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:13,445 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:13,445 INFO L74 IsIncluded]: Start isIncluded. First operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 146 states. [2022-04-28 12:17:13,446 INFO L87 Difference]: Start difference. First operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) Second operand 146 states. [2022-04-28 12:17:13,451 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:13,451 INFO L93 Difference]: Finished difference Result 146 states and 198 transitions. [2022-04-28 12:17:13,451 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 198 transitions. [2022-04-28 12:17:13,452 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:13,452 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:13,452 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:17:13,452 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:17:13,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 146 states, 90 states have (on average 1.2666666666666666) internal successors, (114), 94 states have internal predecessors, (114), 43 states have call successors, (43), 13 states have call predecessors, (43), 12 states have return successors, (41), 38 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-28 12:17:13,458 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 146 states to 146 states and 198 transitions. [2022-04-28 12:17:13,459 INFO L78 Accepts]: Start accepts. Automaton has 146 states and 198 transitions. Word has length 62 [2022-04-28 12:17:13,459 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:17:13,459 INFO L495 AbstractCegarLoop]: Abstraction has 146 states and 198 transitions. [2022-04-28 12:17:13,459 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), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:13,459 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 146 states and 198 transitions. [2022-04-28 12:17:13,733 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 198 edges. 198 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:13,734 INFO L276 IsEmpty]: Start isEmpty. Operand 146 states and 198 transitions. [2022-04-28 12:17:13,734 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-04-28 12:17:13,734 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:17:13,734 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:17:13,761 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:17:13,935 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:17:13,935 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:17:13,935 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:17:13,935 INFO L85 PathProgramCache]: Analyzing trace with hash -385934262, now seen corresponding path program 1 times [2022-04-28 12:17:13,936 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:13,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1167169133] [2022-04-28 12:17:13,936 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:17:13,936 INFO L85 PathProgramCache]: Analyzing trace with hash -385934262, now seen corresponding path program 2 times [2022-04-28 12:17:13,936 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:17:13,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1130749222] [2022-04-28 12:17:13,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:17:13,937 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:17:13,948 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:17:13,949 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [799802300] [2022-04-28 12:17:13,949 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:17:13,949 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:17:13,949 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:17:13,978 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:17:13,983 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:17:14,044 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:17:14,044 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:17:14,045 INFO L263 TraceCheckSpWp]: Trace formula consists of 220 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 12:17:14,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:17:14,067 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:17:14,416 INFO L272 TraceCheckUtils]: 0: Hoare triple {8519#true} call ULTIMATE.init(); {8519#true} is VALID [2022-04-28 12:17:14,417 INFO L290 TraceCheckUtils]: 1: Hoare triple {8519#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; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,418 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8527#(<= ~counter~0 0)} {8519#true} #98#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,419 INFO L272 TraceCheckUtils]: 4: Hoare triple {8527#(<= ~counter~0 0)} call #t~ret8 := main(); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {8527#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,420 INFO L272 TraceCheckUtils]: 6: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,420 INFO L290 TraceCheckUtils]: 7: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,420 INFO L290 TraceCheckUtils]: 8: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,421 INFO L290 TraceCheckUtils]: 9: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,421 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #78#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,421 INFO L272 TraceCheckUtils]: 11: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,422 INFO L290 TraceCheckUtils]: 12: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,422 INFO L290 TraceCheckUtils]: 14: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,423 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #80#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,423 INFO L290 TraceCheckUtils]: 16: Hoare triple {8527#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,423 INFO L272 TraceCheckUtils]: 17: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,424 INFO L290 TraceCheckUtils]: 18: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,424 INFO L290 TraceCheckUtils]: 19: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,424 INFO L290 TraceCheckUtils]: 20: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,425 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #82#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,425 INFO L272 TraceCheckUtils]: 22: Hoare triple {8527#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,426 INFO L290 TraceCheckUtils]: 23: Hoare triple {8527#(<= ~counter~0 0)} ~cond := #in~cond; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,426 INFO L290 TraceCheckUtils]: 24: Hoare triple {8527#(<= ~counter~0 0)} assume !(0 == ~cond); {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,426 INFO L290 TraceCheckUtils]: 25: Hoare triple {8527#(<= ~counter~0 0)} assume true; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,427 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8527#(<= ~counter~0 0)} {8527#(<= ~counter~0 0)} #84#return; {8527#(<= ~counter~0 0)} is VALID [2022-04-28 12:17:14,428 INFO L290 TraceCheckUtils]: 27: Hoare triple {8527#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8606#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:14,428 INFO L290 TraceCheckUtils]: 28: Hoare triple {8606#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {8606#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:14,429 INFO L290 TraceCheckUtils]: 29: Hoare triple {8606#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8606#(<= ~counter~0 1)} is VALID [2022-04-28 12:17:14,429 INFO L290 TraceCheckUtils]: 30: Hoare triple {8606#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,429 INFO L290 TraceCheckUtils]: 31: Hoare triple {8616#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,430 INFO L272 TraceCheckUtils]: 32: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,431 INFO L290 TraceCheckUtils]: 33: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,431 INFO L290 TraceCheckUtils]: 34: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,431 INFO L290 TraceCheckUtils]: 35: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,432 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #86#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,433 INFO L272 TraceCheckUtils]: 37: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,433 INFO L290 TraceCheckUtils]: 38: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,434 INFO L290 TraceCheckUtils]: 39: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,440 INFO L290 TraceCheckUtils]: 40: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,441 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #88#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,442 INFO L272 TraceCheckUtils]: 42: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,442 INFO L290 TraceCheckUtils]: 43: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,442 INFO L290 TraceCheckUtils]: 44: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,443 INFO L290 TraceCheckUtils]: 45: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,443 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #90#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,444 INFO L272 TraceCheckUtils]: 47: Hoare triple {8616#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,444 INFO L290 TraceCheckUtils]: 48: Hoare triple {8616#(<= ~counter~0 2)} ~cond := #in~cond; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,445 INFO L290 TraceCheckUtils]: 49: Hoare triple {8616#(<= ~counter~0 2)} assume !(0 == ~cond); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,445 INFO L290 TraceCheckUtils]: 50: Hoare triple {8616#(<= ~counter~0 2)} assume true; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,445 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8616#(<= ~counter~0 2)} {8616#(<= ~counter~0 2)} #92#return; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,446 INFO L290 TraceCheckUtils]: 52: Hoare triple {8616#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,446 INFO L290 TraceCheckUtils]: 53: Hoare triple {8616#(<= ~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; {8616#(<= ~counter~0 2)} is VALID [2022-04-28 12:17:14,447 INFO L290 TraceCheckUtils]: 54: Hoare triple {8616#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8689#(<= ~counter~0 3)} is VALID [2022-04-28 12:17:14,447 INFO L290 TraceCheckUtils]: 55: Hoare triple {8689#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {8689#(<= ~counter~0 3)} is VALID [2022-04-28 12:17:14,447 INFO L290 TraceCheckUtils]: 56: Hoare triple {8689#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8689#(<= ~counter~0 3)} is VALID [2022-04-28 12:17:14,448 INFO L290 TraceCheckUtils]: 57: Hoare triple {8689#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8699#(<= |main_#t~post7| 3)} is VALID [2022-04-28 12:17:14,448 INFO L290 TraceCheckUtils]: 58: Hoare triple {8699#(<= |main_#t~post7| 3)} assume !(#t~post7 < 100);havoc #t~post7; {8520#false} is VALID [2022-04-28 12:17:14,448 INFO L290 TraceCheckUtils]: 59: Hoare triple {8520#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; {8520#false} is VALID [2022-04-28 12:17:14,448 INFO L290 TraceCheckUtils]: 60: Hoare triple {8520#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8520#false} is VALID [2022-04-28 12:17:14,448 INFO L290 TraceCheckUtils]: 61: Hoare triple {8520#false} assume !(#t~post6 < 100);havoc #t~post6; {8520#false} is VALID [2022-04-28 12:17:14,449 INFO L272 TraceCheckUtils]: 62: Hoare triple {8520#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {8520#false} is VALID [2022-04-28 12:17:14,449 INFO L290 TraceCheckUtils]: 63: Hoare triple {8520#false} ~cond := #in~cond; {8520#false} is VALID [2022-04-28 12:17:14,449 INFO L290 TraceCheckUtils]: 64: Hoare triple {8520#false} assume 0 == ~cond; {8520#false} is VALID [2022-04-28 12:17:14,449 INFO L290 TraceCheckUtils]: 65: Hoare triple {8520#false} assume !false; {8520#false} is VALID [2022-04-28 12:17:14,449 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:14,449 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:17:14,877 INFO L290 TraceCheckUtils]: 65: Hoare triple {8520#false} assume !false; {8520#false} is VALID [2022-04-28 12:17:14,877 INFO L290 TraceCheckUtils]: 64: Hoare triple {8520#false} assume 0 == ~cond; {8520#false} is VALID [2022-04-28 12:17:14,877 INFO L290 TraceCheckUtils]: 63: Hoare triple {8520#false} ~cond := #in~cond; {8520#false} is VALID [2022-04-28 12:17:14,877 INFO L272 TraceCheckUtils]: 62: Hoare triple {8520#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {8520#false} is VALID [2022-04-28 12:17:14,877 INFO L290 TraceCheckUtils]: 61: Hoare triple {8520#false} assume !(#t~post6 < 100);havoc #t~post6; {8520#false} is VALID [2022-04-28 12:17:14,877 INFO L290 TraceCheckUtils]: 60: Hoare triple {8520#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8520#false} is VALID [2022-04-28 12:17:14,877 INFO L290 TraceCheckUtils]: 59: Hoare triple {8520#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; {8520#false} is VALID [2022-04-28 12:17:14,878 INFO L290 TraceCheckUtils]: 58: Hoare triple {8745#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {8520#false} is VALID [2022-04-28 12:17:14,878 INFO L290 TraceCheckUtils]: 57: Hoare triple {8749#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8745#(< |main_#t~post7| 100)} is VALID [2022-04-28 12:17:14,878 INFO L290 TraceCheckUtils]: 56: Hoare triple {8749#(< ~counter~0 100)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8749#(< ~counter~0 100)} is VALID [2022-04-28 12:17:14,879 INFO L290 TraceCheckUtils]: 55: Hoare triple {8749#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {8749#(< ~counter~0 100)} is VALID [2022-04-28 12:17:14,879 INFO L290 TraceCheckUtils]: 54: Hoare triple {8759#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8749#(< ~counter~0 100)} is VALID [2022-04-28 12:17:14,880 INFO L290 TraceCheckUtils]: 53: Hoare triple {8759#(< ~counter~0 99)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,880 INFO L290 TraceCheckUtils]: 52: Hoare triple {8759#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,881 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {8519#true} {8759#(< ~counter~0 99)} #92#return; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,881 INFO L290 TraceCheckUtils]: 50: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,881 INFO L290 TraceCheckUtils]: 49: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,881 INFO L290 TraceCheckUtils]: 48: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,881 INFO L272 TraceCheckUtils]: 47: Hoare triple {8759#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,882 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8519#true} {8759#(< ~counter~0 99)} #90#return; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,882 INFO L290 TraceCheckUtils]: 45: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,882 INFO L290 TraceCheckUtils]: 44: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,882 INFO L290 TraceCheckUtils]: 43: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,882 INFO L272 TraceCheckUtils]: 42: Hoare triple {8759#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,883 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8519#true} {8759#(< ~counter~0 99)} #88#return; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,883 INFO L290 TraceCheckUtils]: 40: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,883 INFO L290 TraceCheckUtils]: 39: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,883 INFO L290 TraceCheckUtils]: 38: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,883 INFO L272 TraceCheckUtils]: 37: Hoare triple {8759#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,884 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8519#true} {8759#(< ~counter~0 99)} #86#return; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,884 INFO L290 TraceCheckUtils]: 35: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,884 INFO L290 TraceCheckUtils]: 34: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,884 INFO L290 TraceCheckUtils]: 33: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,885 INFO L272 TraceCheckUtils]: 32: Hoare triple {8759#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,885 INFO L290 TraceCheckUtils]: 31: Hoare triple {8759#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,886 INFO L290 TraceCheckUtils]: 30: Hoare triple {8832#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8759#(< ~counter~0 99)} is VALID [2022-04-28 12:17:14,886 INFO L290 TraceCheckUtils]: 29: Hoare triple {8832#(< ~counter~0 98)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {8832#(< ~counter~0 98)} is VALID [2022-04-28 12:17:14,886 INFO L290 TraceCheckUtils]: 28: Hoare triple {8832#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {8832#(< ~counter~0 98)} is VALID [2022-04-28 12:17:14,887 INFO L290 TraceCheckUtils]: 27: Hoare triple {8842#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8832#(< ~counter~0 98)} is VALID [2022-04-28 12:17:14,888 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {8519#true} {8842#(< ~counter~0 97)} #84#return; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,888 INFO L290 TraceCheckUtils]: 25: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,888 INFO L290 TraceCheckUtils]: 24: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,888 INFO L272 TraceCheckUtils]: 22: Hoare triple {8842#(< ~counter~0 97)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,895 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {8519#true} {8842#(< ~counter~0 97)} #82#return; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,896 INFO L290 TraceCheckUtils]: 20: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,896 INFO L290 TraceCheckUtils]: 19: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,896 INFO L290 TraceCheckUtils]: 18: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,896 INFO L272 TraceCheckUtils]: 17: Hoare triple {8842#(< ~counter~0 97)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,896 INFO L290 TraceCheckUtils]: 16: Hoare triple {8842#(< ~counter~0 97)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,897 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8519#true} {8842#(< ~counter~0 97)} #80#return; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,897 INFO L290 TraceCheckUtils]: 14: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,897 INFO L290 TraceCheckUtils]: 13: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,897 INFO L290 TraceCheckUtils]: 12: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,897 INFO L272 TraceCheckUtils]: 11: Hoare triple {8842#(< ~counter~0 97)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,898 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8519#true} {8842#(< ~counter~0 97)} #78#return; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,898 INFO L290 TraceCheckUtils]: 9: Hoare triple {8519#true} assume true; {8519#true} is VALID [2022-04-28 12:17:14,898 INFO L290 TraceCheckUtils]: 8: Hoare triple {8519#true} assume !(0 == ~cond); {8519#true} is VALID [2022-04-28 12:17:14,898 INFO L290 TraceCheckUtils]: 7: Hoare triple {8519#true} ~cond := #in~cond; {8519#true} is VALID [2022-04-28 12:17:14,898 INFO L272 TraceCheckUtils]: 6: Hoare triple {8842#(< ~counter~0 97)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8519#true} is VALID [2022-04-28 12:17:14,898 INFO L290 TraceCheckUtils]: 5: Hoare triple {8842#(< ~counter~0 97)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {8842#(< ~counter~0 97)} call #t~ret8 := main(); {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8842#(< ~counter~0 97)} {8519#true} #98#return; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,899 INFO L290 TraceCheckUtils]: 2: Hoare triple {8842#(< ~counter~0 97)} assume true; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,900 INFO L290 TraceCheckUtils]: 1: Hoare triple {8519#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; {8842#(< ~counter~0 97)} is VALID [2022-04-28 12:17:14,900 INFO L272 TraceCheckUtils]: 0: Hoare triple {8519#true} call ULTIMATE.init(); {8519#true} is VALID [2022-04-28 12:17:14,900 INFO L134 CoverageAnalysis]: Checked inductivity of 66 backedges. 13 proven. 5 refuted. 0 times theorem prover too weak. 48 trivial. 0 not checked. [2022-04-28 12:17:14,901 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:17:14,901 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1130749222] [2022-04-28 12:17:14,901 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:17:14,901 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [799802300] [2022-04-28 12:17:14,901 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [799802300] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:17:14,901 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:17:14,901 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 12:17:14,901 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:17:14,902 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1167169133] [2022-04-28 12:17:14,902 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1167169133] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:17:14,902 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:17:14,902 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 12:17:14,902 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1643852373] [2022-04-28 12:17:14,902 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:17:14,903 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-28 12:17:14,903 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:17:14,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:14,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:14,948 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 12:17:14,948 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:14,948 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 12:17:14,948 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 12:17:14,949 INFO L87 Difference]: Start difference. First operand 146 states and 198 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:15,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:15,571 INFO L93 Difference]: Finished difference Result 253 states and 351 transitions. [2022-04-28 12:17:15,571 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 12:17:15,572 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) Word has length 66 [2022-04-28 12:17:15,572 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:17:15,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:15,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-28 12:17:15,574 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:15,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-28 12:17:15,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 114 transitions. [2022-04-28 12:17:15,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:15,680 INFO L225 Difference]: With dead ends: 253 [2022-04-28 12:17:15,680 INFO L226 Difference]: Without dead ends: 173 [2022-04-28 12:17:15,681 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 133 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=70, Invalid=112, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:17:15,682 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 29 mSDsluCounter, 105 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 155 SdHoareTripleChecker+Invalid, 61 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:17:15,682 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 155 Invalid, 61 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:17:15,683 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 173 states. [2022-04-28 12:17:15,993 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 173 to 171. [2022-04-28 12:17:15,993 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:17:15,994 INFO L82 GeneralOperation]: Start isEquivalent. First operand 173 states. Second operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 12:17:15,994 INFO L74 IsIncluded]: Start isIncluded. First operand 173 states. Second operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 12:17:15,994 INFO L87 Difference]: Start difference. First operand 173 states. Second operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 12:17:15,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:16,000 INFO L93 Difference]: Finished difference Result 173 states and 225 transitions. [2022-04-28 12:17:16,000 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 225 transitions. [2022-04-28 12:17:16,001 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:16,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:16,002 INFO L74 IsIncluded]: Start isIncluded. First operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-28 12:17:16,002 INFO L87 Difference]: Start difference. First operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) Second operand 173 states. [2022-04-28 12:17:16,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:16,007 INFO L93 Difference]: Finished difference Result 173 states and 225 transitions. [2022-04-28 12:17:16,007 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 225 transitions. [2022-04-28 12:17:16,008 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:16,008 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:16,008 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:17:16,008 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:17:16,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 171 states, 108 states have (on average 1.2314814814814814) internal successors, (133), 111 states have internal predecessors, (133), 46 states have call successors, (46), 17 states have call predecessors, (46), 16 states have return successors, (44), 42 states have call predecessors, (44), 44 states have call successors, (44) [2022-04-28 12:17:16,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 171 states to 171 states and 223 transitions. [2022-04-28 12:17:16,013 INFO L78 Accepts]: Start accepts. Automaton has 171 states and 223 transitions. Word has length 66 [2022-04-28 12:17:16,013 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:17:16,013 INFO L495 AbstractCegarLoop]: Abstraction has 171 states and 223 transitions. [2022-04-28 12:17:16,018 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 4 states have call successors, (11), 4 states have call predecessors, (11), 2 states have return successors, (9), 2 states have call predecessors, (9), 3 states have call successors, (9) [2022-04-28 12:17:16,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 171 states and 223 transitions. [2022-04-28 12:17:16,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 223 edges. 223 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:16,558 INFO L276 IsEmpty]: Start isEmpty. Operand 171 states and 223 transitions. [2022-04-28 12:17:16,558 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-28 12:17:16,558 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:17:16,558 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:17:16,591 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 12:17:16,759 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:17:16,759 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:17:16,760 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:17:16,760 INFO L85 PathProgramCache]: Analyzing trace with hash 792554045, now seen corresponding path program 1 times [2022-04-28 12:17:16,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:16,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [516564042] [2022-04-28 12:17:16,760 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:17:16,760 INFO L85 PathProgramCache]: Analyzing trace with hash 792554045, now seen corresponding path program 2 times [2022-04-28 12:17:16,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:17:16,761 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1092726573] [2022-04-28 12:17:16,761 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:17:16,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:17:16,778 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:17:16,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1639929573] [2022-04-28 12:17:16,778 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:17:16,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:17:16,778 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:17:16,788 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:17:16,790 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:17:16,847 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:17:16,847 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:17:16,848 INFO L263 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-28 12:17:16,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:17:16,866 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:17:17,310 INFO L272 TraceCheckUtils]: 0: Hoare triple {10124#true} call ULTIMATE.init(); {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L290 TraceCheckUtils]: 1: Hoare triple {10124#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; {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L290 TraceCheckUtils]: 2: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10124#true} {10124#true} #98#return; {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L272 TraceCheckUtils]: 4: Hoare triple {10124#true} call #t~ret8 := main(); {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L290 TraceCheckUtils]: 5: Hoare triple {10124#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L272 TraceCheckUtils]: 6: Hoare triple {10124#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L290 TraceCheckUtils]: 7: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L290 TraceCheckUtils]: 8: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,311 INFO L290 TraceCheckUtils]: 9: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10124#true} {10124#true} #78#return; {10124#true} is VALID [2022-04-28 12:17:17,312 INFO L272 TraceCheckUtils]: 11: Hoare triple {10124#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,312 INFO L290 TraceCheckUtils]: 12: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,312 INFO L290 TraceCheckUtils]: 13: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,313 INFO L290 TraceCheckUtils]: 14: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,313 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10124#true} {10124#true} #80#return; {10124#true} is VALID [2022-04-28 12:17:17,313 INFO L290 TraceCheckUtils]: 16: Hoare triple {10124#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:17:17,313 INFO L272 TraceCheckUtils]: 17: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,313 INFO L290 TraceCheckUtils]: 18: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,314 INFO L290 TraceCheckUtils]: 19: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,314 INFO L290 TraceCheckUtils]: 20: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,314 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10124#true} {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #82#return; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:17:17,314 INFO L272 TraceCheckUtils]: 22: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,315 INFO L290 TraceCheckUtils]: 23: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,315 INFO L290 TraceCheckUtils]: 24: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,315 INFO L290 TraceCheckUtils]: 25: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,315 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10124#true} {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #84#return; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:17:17,316 INFO L290 TraceCheckUtils]: 27: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:17:17,316 INFO L290 TraceCheckUtils]: 28: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:17:17,317 INFO L290 TraceCheckUtils]: 29: Hoare triple {10177#(and (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,317 INFO L290 TraceCheckUtils]: 30: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,318 INFO L290 TraceCheckUtils]: 31: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,318 INFO L272 TraceCheckUtils]: 32: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,318 INFO L290 TraceCheckUtils]: 33: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,326 INFO L290 TraceCheckUtils]: 34: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,326 INFO L290 TraceCheckUtils]: 35: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,327 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10124#true} {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #86#return; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,327 INFO L272 TraceCheckUtils]: 37: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,327 INFO L290 TraceCheckUtils]: 38: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,327 INFO L290 TraceCheckUtils]: 39: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,327 INFO L290 TraceCheckUtils]: 40: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,328 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10124#true} {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #88#return; {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,328 INFO L272 TraceCheckUtils]: 42: Hoare triple {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,328 INFO L290 TraceCheckUtils]: 43: Hoare triple {10124#true} ~cond := #in~cond; {10260#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:17:17,329 INFO L290 TraceCheckUtils]: 44: Hoare triple {10260#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:17:17,329 INFO L290 TraceCheckUtils]: 45: Hoare triple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:17:17,330 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} {10217#(and (= main_~q~0 0) (= main_~c~0 main_~x~0))} #90#return; {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,330 INFO L272 TraceCheckUtils]: 47: Hoare triple {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,330 INFO L290 TraceCheckUtils]: 48: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,330 INFO L290 TraceCheckUtils]: 49: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,330 INFO L290 TraceCheckUtils]: 50: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,331 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {10124#true} {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #92#return; {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,331 INFO L290 TraceCheckUtils]: 52: Hoare triple {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 12:17:17,332 INFO L290 TraceCheckUtils]: 53: Hoare triple {10271#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~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; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,332 INFO L290 TraceCheckUtils]: 54: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,333 INFO L290 TraceCheckUtils]: 55: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post6 < 100);havoc #t~post6; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,333 INFO L290 TraceCheckUtils]: 56: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,334 INFO L290 TraceCheckUtils]: 57: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,334 INFO L290 TraceCheckUtils]: 58: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,334 INFO L272 TraceCheckUtils]: 59: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:17,335 INFO L290 TraceCheckUtils]: 60: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:17,335 INFO L290 TraceCheckUtils]: 61: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:17,335 INFO L290 TraceCheckUtils]: 62: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:17,335 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {10124#true} {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #86#return; {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:17:17,336 INFO L272 TraceCheckUtils]: 64: Hoare triple {10293#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:17:17,337 INFO L290 TraceCheckUtils]: 65: Hoare triple {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10331#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:17:17,337 INFO L290 TraceCheckUtils]: 66: Hoare triple {10331#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10125#false} is VALID [2022-04-28 12:17:17,337 INFO L290 TraceCheckUtils]: 67: Hoare triple {10125#false} assume !false; {10125#false} is VALID [2022-04-28 12:17:17,337 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 15 proven. 14 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:17:17,338 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:17:33,691 INFO L290 TraceCheckUtils]: 67: Hoare triple {10125#false} assume !false; {10125#false} is VALID [2022-04-28 12:17:33,692 INFO L290 TraceCheckUtils]: 66: Hoare triple {10331#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10125#false} is VALID [2022-04-28 12:17:33,692 INFO L290 TraceCheckUtils]: 65: Hoare triple {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10331#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:17:33,693 INFO L272 TraceCheckUtils]: 64: Hoare triple {10347#(= 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)); {10327#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:17:33,694 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {10124#true} {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,694 INFO L290 TraceCheckUtils]: 62: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,694 INFO L290 TraceCheckUtils]: 61: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,694 INFO L290 TraceCheckUtils]: 60: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,695 INFO L272 TraceCheckUtils]: 59: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,695 INFO L290 TraceCheckUtils]: 58: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,696 INFO L290 TraceCheckUtils]: 57: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,696 INFO L290 TraceCheckUtils]: 56: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,697 INFO L290 TraceCheckUtils]: 55: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,697 INFO L290 TraceCheckUtils]: 54: Hoare triple {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,698 INFO L290 TraceCheckUtils]: 53: Hoare triple {10381#(= 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; {10347#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:17:33,698 INFO L290 TraceCheckUtils]: 52: Hoare triple {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:17:33,699 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {10124#true} {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:17:33,699 INFO L290 TraceCheckUtils]: 50: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,699 INFO L290 TraceCheckUtils]: 49: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,700 INFO L290 TraceCheckUtils]: 48: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,700 INFO L272 TraceCheckUtils]: 47: Hoare triple {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,701 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} {10124#true} #90#return; {10381#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:17:33,701 INFO L290 TraceCheckUtils]: 45: Hoare triple {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:17:33,701 INFO L290 TraceCheckUtils]: 44: Hoare triple {10412#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10264#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:17:33,702 INFO L290 TraceCheckUtils]: 43: Hoare triple {10124#true} ~cond := #in~cond; {10412#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:17:33,702 INFO L272 TraceCheckUtils]: 42: Hoare triple {10124#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,702 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10124#true} {10124#true} #88#return; {10124#true} is VALID [2022-04-28 12:17:33,702 INFO L290 TraceCheckUtils]: 40: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,702 INFO L290 TraceCheckUtils]: 39: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,702 INFO L290 TraceCheckUtils]: 38: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L272 TraceCheckUtils]: 37: Hoare triple {10124#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10124#true} {10124#true} #86#return; {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L290 TraceCheckUtils]: 35: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L290 TraceCheckUtils]: 34: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L290 TraceCheckUtils]: 33: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L272 TraceCheckUtils]: 32: Hoare triple {10124#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L290 TraceCheckUtils]: 31: Hoare triple {10124#true} assume !!(#t~post7 < 100);havoc #t~post7; {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L290 TraceCheckUtils]: 30: Hoare triple {10124#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10124#true} is VALID [2022-04-28 12:17:33,703 INFO L290 TraceCheckUtils]: 29: Hoare triple {10124#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 28: Hoare triple {10124#true} assume !!(#t~post6 < 100);havoc #t~post6; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 27: Hoare triple {10124#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {10124#true} {10124#true} #84#return; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 25: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 24: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 23: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L272 TraceCheckUtils]: 22: Hoare triple {10124#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {10124#true} {10124#true} #82#return; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 20: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,704 INFO L290 TraceCheckUtils]: 19: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L290 TraceCheckUtils]: 18: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L272 TraceCheckUtils]: 17: Hoare triple {10124#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L290 TraceCheckUtils]: 16: Hoare triple {10124#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10124#true} {10124#true} #80#return; {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L290 TraceCheckUtils]: 14: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L290 TraceCheckUtils]: 13: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L290 TraceCheckUtils]: 12: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L272 TraceCheckUtils]: 11: Hoare triple {10124#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,705 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10124#true} {10124#true} #78#return; {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L290 TraceCheckUtils]: 9: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L290 TraceCheckUtils]: 8: Hoare triple {10124#true} assume !(0 == ~cond); {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L290 TraceCheckUtils]: 7: Hoare triple {10124#true} ~cond := #in~cond; {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L272 TraceCheckUtils]: 6: Hoare triple {10124#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L290 TraceCheckUtils]: 5: Hoare triple {10124#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L272 TraceCheckUtils]: 4: Hoare triple {10124#true} call #t~ret8 := main(); {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10124#true} {10124#true} #98#return; {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L290 TraceCheckUtils]: 2: Hoare triple {10124#true} assume true; {10124#true} is VALID [2022-04-28 12:17:33,706 INFO L290 TraceCheckUtils]: 1: Hoare triple {10124#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; {10124#true} is VALID [2022-04-28 12:17:33,707 INFO L272 TraceCheckUtils]: 0: Hoare triple {10124#true} call ULTIMATE.init(); {10124#true} is VALID [2022-04-28 12:17:33,708 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 22 proven. 7 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 12:17:33,708 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:17:33,708 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1092726573] [2022-04-28 12:17:33,708 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:17:33,708 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1639929573] [2022-04-28 12:17:33,708 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1639929573] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:17:33,709 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:17:33,709 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 8] total 13 [2022-04-28 12:17:33,710 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:17:33,710 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [516564042] [2022-04-28 12:17:33,710 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [516564042] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:17:33,710 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:17:33,710 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 12:17:33,710 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1461085345] [2022-04-28 12:17:33,710 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:17:33,711 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-28 12:17:33,711 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:17:33,711 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-28 12:17:33,758 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:33,758 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 12:17:33,758 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:33,758 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 12:17:33,758 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-04-28 12:17:33,759 INFO L87 Difference]: Start difference. First operand 171 states and 223 transitions. Second operand has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-28 12:17:35,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:35,130 INFO L93 Difference]: Finished difference Result 195 states and 259 transitions. [2022-04-28 12:17:35,130 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 12:17:35,130 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-28 12:17:35,130 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:17:35,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-28 12:17:35,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 97 transitions. [2022-04-28 12:17:35,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-28 12:17:35,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 97 transitions. [2022-04-28 12:17:35,133 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 97 transitions. [2022-04-28 12:17:35,232 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:35,236 INFO L225 Difference]: With dead ends: 195 [2022-04-28 12:17:35,236 INFO L226 Difference]: Without dead ends: 193 [2022-04-28 12:17:35,237 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 139 GetRequests, 123 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=54, Invalid=218, Unknown=0, NotChecked=0, Total=272 [2022-04-28 12:17:35,237 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 22 mSDsluCounter, 248 mSDsCounter, 0 mSdLazyCounter, 312 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 295 SdHoareTripleChecker+Invalid, 320 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 312 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 12:17:35,238 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [29 Valid, 295 Invalid, 320 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 312 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 12:17:35,238 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 193 states. [2022-04-28 12:17:35,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 193 to 190. [2022-04-28 12:17:35,536 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:17:35,536 INFO L82 GeneralOperation]: Start isEquivalent. First operand 193 states. Second operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:17:35,536 INFO L74 IsIncluded]: Start isIncluded. First operand 193 states. Second operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:17:35,537 INFO L87 Difference]: Start difference. First operand 193 states. Second operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:17:35,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:35,540 INFO L93 Difference]: Finished difference Result 193 states and 257 transitions. [2022-04-28 12:17:35,540 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 257 transitions. [2022-04-28 12:17:35,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:35,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:35,542 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 193 states. [2022-04-28 12:17:35,542 INFO L87 Difference]: Start difference. First operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 193 states. [2022-04-28 12:17:35,548 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:17:35,548 INFO L93 Difference]: Finished difference Result 193 states and 257 transitions. [2022-04-28 12:17:35,548 INFO L276 IsEmpty]: Start isEmpty. Operand 193 states and 257 transitions. [2022-04-28 12:17:35,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:17:35,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:17:35,549 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:17:35,549 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:17:35,549 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 117 states have (on average 1.2478632478632479) internal successors, (146), 121 states have internal predecessors, (146), 55 states have call successors, (55), 18 states have call predecessors, (55), 17 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:17:35,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 254 transitions. [2022-04-28 12:17:35,555 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 254 transitions. Word has length 68 [2022-04-28 12:17:35,555 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:17:35,555 INFO L495 AbstractCegarLoop]: Abstraction has 190 states and 254 transitions. [2022-04-28 12:17:35,556 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 2.8) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-28 12:17:35,556 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 254 transitions. [2022-04-28 12:17:35,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:17:35,906 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 254 transitions. [2022-04-28 12:17:35,907 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-28 12:17:35,907 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:17:35,907 INFO L195 NwaCegarLoop]: trace histogram [7, 6, 6, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:17:35,928 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-28 12:17:36,121 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:17:36,122 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:17:36,122 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:17:36,122 INFO L85 PathProgramCache]: Analyzing trace with hash 783638790, now seen corresponding path program 3 times [2022-04-28 12:17:36,122 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:17:36,122 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1560222344] [2022-04-28 12:17:36,123 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:17:36,123 INFO L85 PathProgramCache]: Analyzing trace with hash 783638790, now seen corresponding path program 4 times [2022-04-28 12:17:36,123 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:17:36,123 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [349359180] [2022-04-28 12:17:36,123 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:17:36,123 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:17:36,157 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:17:36,158 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1698258825] [2022-04-28 12:17:36,158 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:17:36,158 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:17:36,158 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:17:36,159 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:17:36,164 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:17:36,210 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:17:36,210 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:17:36,211 INFO L263 TraceCheckSpWp]: Trace formula consists of 174 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-28 12:17:36,232 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:17:36,233 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:17:39,229 INFO L272 TraceCheckUtils]: 0: Hoare triple {11708#true} call ULTIMATE.init(); {11708#true} is VALID [2022-04-28 12:17:39,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {11708#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; {11708#true} is VALID [2022-04-28 12:17:39,229 INFO L290 TraceCheckUtils]: 2: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,229 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11708#true} {11708#true} #98#return; {11708#true} is VALID [2022-04-28 12:17:39,229 INFO L272 TraceCheckUtils]: 4: Hoare triple {11708#true} call #t~ret8 := main(); {11708#true} is VALID [2022-04-28 12:17:39,229 INFO L290 TraceCheckUtils]: 5: Hoare triple {11708#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11708#true} is VALID [2022-04-28 12:17:39,229 INFO L272 TraceCheckUtils]: 6: Hoare triple {11708#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {11708#true} ~cond := #in~cond; {11734#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:17:39,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {11734#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {11738#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:17:39,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {11738#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {11738#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:17:39,231 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11738#(not (= |assume_abort_if_not_#in~cond| 0))} {11708#true} #78#return; {11745#(<= 1 main_~x~0)} is VALID [2022-04-28 12:17:39,231 INFO L272 TraceCheckUtils]: 11: Hoare triple {11745#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,231 INFO L290 TraceCheckUtils]: 12: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,231 INFO L290 TraceCheckUtils]: 13: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,231 INFO L290 TraceCheckUtils]: 14: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,232 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11708#true} {11745#(<= 1 main_~x~0)} #80#return; {11745#(<= 1 main_~x~0)} is VALID [2022-04-28 12:17:39,232 INFO L290 TraceCheckUtils]: 16: Hoare triple {11745#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:17:39,232 INFO L272 TraceCheckUtils]: 17: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,232 INFO L290 TraceCheckUtils]: 18: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,232 INFO L290 TraceCheckUtils]: 19: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,232 INFO L290 TraceCheckUtils]: 20: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,233 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {11708#true} {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:17:39,233 INFO L272 TraceCheckUtils]: 22: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,233 INFO L290 TraceCheckUtils]: 23: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,233 INFO L290 TraceCheckUtils]: 24: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,233 INFO L290 TraceCheckUtils]: 25: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,234 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {11708#true} {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:17:39,234 INFO L290 TraceCheckUtils]: 27: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= 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; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:17:39,235 INFO L290 TraceCheckUtils]: 28: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:17:39,235 INFO L290 TraceCheckUtils]: 29: Hoare triple {11764#(and (= main_~r~0 0) (<= 1 main_~x~0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,236 INFO L290 TraceCheckUtils]: 30: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,236 INFO L290 TraceCheckUtils]: 31: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,236 INFO L272 TraceCheckUtils]: 32: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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)); {11708#true} is VALID [2022-04-28 12:17:39,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,236 INFO L290 TraceCheckUtils]: 34: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,236 INFO L290 TraceCheckUtils]: 35: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,237 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #86#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,237 INFO L272 TraceCheckUtils]: 37: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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)); {11708#true} is VALID [2022-04-28 12:17:39,237 INFO L290 TraceCheckUtils]: 38: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,237 INFO L290 TraceCheckUtils]: 39: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,237 INFO L290 TraceCheckUtils]: 40: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,238 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #88#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,238 INFO L272 TraceCheckUtils]: 42: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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)); {11708#true} is VALID [2022-04-28 12:17:39,238 INFO L290 TraceCheckUtils]: 43: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,238 INFO L290 TraceCheckUtils]: 44: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,238 INFO L290 TraceCheckUtils]: 45: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,239 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,239 INFO L272 TraceCheckUtils]: 47: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,239 INFO L290 TraceCheckUtils]: 48: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,239 INFO L290 TraceCheckUtils]: 49: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,239 INFO L290 TraceCheckUtils]: 50: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,240 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {11708#true} {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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:17:39,241 INFO L290 TraceCheckUtils]: 52: Hoare triple {11804#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (<= 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); {11874#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:17:39,241 INFO L290 TraceCheckUtils]: 53: Hoare triple {11874#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 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; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,242 INFO L290 TraceCheckUtils]: 54: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,242 INFO L290 TraceCheckUtils]: 55: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,243 INFO L290 TraceCheckUtils]: 56: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,243 INFO L290 TraceCheckUtils]: 57: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,243 INFO L290 TraceCheckUtils]: 58: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,244 INFO L272 TraceCheckUtils]: 59: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,244 INFO L290 TraceCheckUtils]: 60: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,244 INFO L290 TraceCheckUtils]: 61: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,244 INFO L290 TraceCheckUtils]: 62: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,244 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {11708#true} {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #86#return; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,244 INFO L272 TraceCheckUtils]: 64: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {11708#true} is VALID [2022-04-28 12:17:39,245 INFO L290 TraceCheckUtils]: 65: Hoare triple {11708#true} ~cond := #in~cond; {11708#true} is VALID [2022-04-28 12:17:39,245 INFO L290 TraceCheckUtils]: 66: Hoare triple {11708#true} assume !(0 == ~cond); {11708#true} is VALID [2022-04-28 12:17:39,245 INFO L290 TraceCheckUtils]: 67: Hoare triple {11708#true} assume true; {11708#true} is VALID [2022-04-28 12:17:39,245 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {11708#true} {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #88#return; {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 12:17:39,246 INFO L272 TraceCheckUtils]: 69: Hoare triple {11878#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {11927#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:17:39,246 INFO L290 TraceCheckUtils]: 70: Hoare triple {11927#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {11931#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:17:39,247 INFO L290 TraceCheckUtils]: 71: Hoare triple {11931#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {11709#false} is VALID [2022-04-28 12:17:39,247 INFO L290 TraceCheckUtils]: 72: Hoare triple {11709#false} assume !false; {11709#false} is VALID [2022-04-28 12:17:39,247 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 12 proven. 17 refuted. 0 times theorem prover too weak. 75 trivial. 0 not checked. [2022-04-28 12:17:39,247 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:19:05,753 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:19:05,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [349359180] [2022-04-28 12:19:05,753 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:19:05,754 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1698258825] [2022-04-28 12:19:05,754 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1698258825] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 12:19:05,754 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:19:05,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-28 12:19:05,754 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:19:05,754 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1560222344] [2022-04-28 12:19:05,754 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1560222344] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:19:05,754 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:19:05,754 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 12:19:05,754 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1398772324] [2022-04-28 12:19:05,754 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:19:05,755 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-28 12:19:05,755 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:19:05,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 12:19:05,806 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:19:05,806 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 12:19:05,807 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:19:05,807 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 12:19:05,807 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-28 12:19:05,807 INFO L87 Difference]: Start difference. First operand 190 states and 254 transitions. Second operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 12:19:07,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:19:07,471 INFO L93 Difference]: Finished difference Result 199 states and 262 transitions. [2022-04-28 12:19:07,471 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:19:07,471 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-28 12:19:07,471 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:19:07,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 12:19:07,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-28 12:19:07,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 12:19:07,500 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 97 transitions. [2022-04-28 12:19:07,501 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 97 transitions. [2022-04-28 12:19:07,652 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:19:07,656 INFO L225 Difference]: With dead ends: 199 [2022-04-28 12:19:07,656 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 12:19:07,656 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=63, Invalid=279, Unknown=0, NotChecked=0, Total=342 [2022-04-28 12:19:07,657 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 39 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 321 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 303 SdHoareTripleChecker+Invalid, 336 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 321 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:19:07,657 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 303 Invalid, 336 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 321 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:19:07,657 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 12:19:08,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-28 12:19:08,133 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:19:08,134 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:19:08,134 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:19:08,135 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:19:08,139 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:19:08,140 INFO L93 Difference]: Finished difference Result 197 states and 260 transitions. [2022-04-28 12:19:08,140 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 260 transitions. [2022-04-28 12:19:08,157 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:19:08,157 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:19:08,157 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 197 states. [2022-04-28 12:19:08,158 INFO L87 Difference]: Start difference. First operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 197 states. [2022-04-28 12:19:08,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:19:08,162 INFO L93 Difference]: Finished difference Result 197 states and 260 transitions. [2022-04-28 12:19:08,162 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 260 transitions. [2022-04-28 12:19:08,163 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:19:08,163 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:19:08,163 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:19:08,163 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:19:08,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 120 states have (on average 1.2416666666666667) internal successors, (149), 124 states have internal predecessors, (149), 55 states have call successors, (55), 19 states have call predecessors, (55), 18 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:19:08,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 257 transitions. [2022-04-28 12:19:08,181 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 257 transitions. Word has length 73 [2022-04-28 12:19:08,181 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:19:08,181 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 257 transitions. [2022-04-28 12:19:08,181 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-28 12:19:08,181 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 257 transitions. [2022-04-28 12:19:08,665 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 257 edges. 257 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:19:08,666 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 257 transitions. [2022-04-28 12:19:08,668 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2022-04-28 12:19:08,668 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:19:08,668 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:19:08,685 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-28 12:19:08,868 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:19:08,869 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:19:08,869 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:19:08,869 INFO L85 PathProgramCache]: Analyzing trace with hash 1625446301, now seen corresponding path program 5 times [2022-04-28 12:19:08,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:19:08,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1149031943] [2022-04-28 12:19:08,870 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:19:08,870 INFO L85 PathProgramCache]: Analyzing trace with hash 1625446301, now seen corresponding path program 6 times [2022-04-28 12:19:08,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:19:08,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1070345150] [2022-04-28 12:19:08,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:19:08,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:19:08,903 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:19:08,903 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1636633656] [2022-04-28 12:19:08,903 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:19:08,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:19:08,904 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:19:08,911 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:19:08,951 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:19:08,991 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 12:19:08,991 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:19:08,993 INFO L263 TraceCheckSpWp]: Trace formula consists of 228 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-28 12:19:09,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:19:09,012 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:19:14,553 INFO L272 TraceCheckUtils]: 0: Hoare triple {13195#true} call ULTIMATE.init(); {13195#true} is VALID [2022-04-28 12:19:14,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {13195#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; {13195#true} is VALID [2022-04-28 12:19:14,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,554 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13195#true} {13195#true} #98#return; {13195#true} is VALID [2022-04-28 12:19:14,554 INFO L272 TraceCheckUtils]: 4: Hoare triple {13195#true} call #t~ret8 := main(); {13195#true} is VALID [2022-04-28 12:19:14,554 INFO L290 TraceCheckUtils]: 5: Hoare triple {13195#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13195#true} is VALID [2022-04-28 12:19:14,554 INFO L272 TraceCheckUtils]: 6: Hoare triple {13195#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,554 INFO L290 TraceCheckUtils]: 7: Hoare triple {13195#true} ~cond := #in~cond; {13221#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:19:14,554 INFO L290 TraceCheckUtils]: 8: Hoare triple {13221#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {13225#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:19:14,555 INFO L290 TraceCheckUtils]: 9: Hoare triple {13225#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {13225#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:19:14,555 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13225#(not (= |assume_abort_if_not_#in~cond| 0))} {13195#true} #78#return; {13232#(<= 1 main_~x~0)} is VALID [2022-04-28 12:19:14,555 INFO L272 TraceCheckUtils]: 11: Hoare triple {13232#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,555 INFO L290 TraceCheckUtils]: 12: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,555 INFO L290 TraceCheckUtils]: 13: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,555 INFO L290 TraceCheckUtils]: 14: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,556 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13195#true} {13232#(<= 1 main_~x~0)} #80#return; {13232#(<= 1 main_~x~0)} is VALID [2022-04-28 12:19:14,556 INFO L290 TraceCheckUtils]: 16: Hoare triple {13232#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,556 INFO L272 TraceCheckUtils]: 17: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,557 INFO L290 TraceCheckUtils]: 18: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,557 INFO L290 TraceCheckUtils]: 19: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,557 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {13195#true} {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,557 INFO L272 TraceCheckUtils]: 22: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,558 INFO L290 TraceCheckUtils]: 23: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,558 INFO L290 TraceCheckUtils]: 24: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,558 INFO L290 TraceCheckUtils]: 25: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,558 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {13195#true} {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,559 INFO L290 TraceCheckUtils]: 27: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,559 INFO L290 TraceCheckUtils]: 28: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,560 INFO L290 TraceCheckUtils]: 29: Hoare triple {13251#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,561 INFO L290 TraceCheckUtils]: 31: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,561 INFO L272 TraceCheckUtils]: 32: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,561 INFO L290 TraceCheckUtils]: 33: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,561 INFO L290 TraceCheckUtils]: 34: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,561 INFO L290 TraceCheckUtils]: 35: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,562 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #86#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,562 INFO L272 TraceCheckUtils]: 37: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,562 INFO L290 TraceCheckUtils]: 38: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,562 INFO L290 TraceCheckUtils]: 39: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,562 INFO L290 TraceCheckUtils]: 40: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,563 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #88#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,563 INFO L272 TraceCheckUtils]: 42: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,563 INFO L290 TraceCheckUtils]: 43: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,563 INFO L290 TraceCheckUtils]: 44: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,563 INFO L290 TraceCheckUtils]: 45: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,564 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,564 INFO L272 TraceCheckUtils]: 47: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,564 INFO L290 TraceCheckUtils]: 48: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,564 INFO L290 TraceCheckUtils]: 49: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,564 INFO L290 TraceCheckUtils]: 50: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,565 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {13195#true} {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,566 INFO L290 TraceCheckUtils]: 52: Hoare triple {13291#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (not (= main_~b~0 0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {13361#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:19:14,566 INFO L290 TraceCheckUtils]: 53: Hoare triple {13361#(and (= main_~r~0 0) (<= 1 main_~x~0) (< main_~c~0 main_~y~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,569 INFO L290 TraceCheckUtils]: 54: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,570 INFO L290 TraceCheckUtils]: 55: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,571 INFO L290 TraceCheckUtils]: 56: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,572 INFO L290 TraceCheckUtils]: 57: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,572 INFO L290 TraceCheckUtils]: 58: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,573 INFO L272 TraceCheckUtils]: 59: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,573 INFO L290 TraceCheckUtils]: 60: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,573 INFO L290 TraceCheckUtils]: 61: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,573 INFO L290 TraceCheckUtils]: 62: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,574 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {13195#true} {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,574 INFO L272 TraceCheckUtils]: 64: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,574 INFO L290 TraceCheckUtils]: 65: Hoare triple {13195#true} ~cond := #in~cond; {13195#true} is VALID [2022-04-28 12:19:14,574 INFO L290 TraceCheckUtils]: 66: Hoare triple {13195#true} assume !(0 == ~cond); {13195#true} is VALID [2022-04-28 12:19:14,574 INFO L290 TraceCheckUtils]: 67: Hoare triple {13195#true} assume true; {13195#true} is VALID [2022-04-28 12:19:14,575 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {13195#true} {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,575 INFO L272 TraceCheckUtils]: 69: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13195#true} is VALID [2022-04-28 12:19:14,576 INFO L290 TraceCheckUtils]: 70: Hoare triple {13195#true} ~cond := #in~cond; {13417#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:19:14,576 INFO L290 TraceCheckUtils]: 71: Hoare triple {13417#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:19:14,577 INFO L290 TraceCheckUtils]: 72: Hoare triple {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:19:14,577 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {13421#(not (= |__VERIFIER_assert_#in~cond| 0))} {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:19:14,578 INFO L272 TraceCheckUtils]: 74: Hoare triple {13365#(and (= main_~s~0 0) (<= 1 main_~x~0) (< main_~x~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {13431#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:19:14,579 INFO L290 TraceCheckUtils]: 75: Hoare triple {13431#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {13435#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:19:14,579 INFO L290 TraceCheckUtils]: 76: Hoare triple {13435#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13196#false} is VALID [2022-04-28 12:19:14,579 INFO L290 TraceCheckUtils]: 77: Hoare triple {13196#false} assume !false; {13196#false} is VALID [2022-04-28 12:19:14,580 INFO L134 CoverageAnalysis]: Checked inductivity of 131 backedges. 31 proven. 19 refuted. 0 times theorem prover too weak. 81 trivial. 0 not checked. [2022-04-28 12:19:14,580 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:20:08,669 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:20:08,670 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1070345150] [2022-04-28 12:20:08,670 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:20:08,670 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1636633656] [2022-04-28 12:20:08,670 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1636633656] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 12:20:08,670 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:20:08,670 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13] total 13 [2022-04-28 12:20:08,670 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:20:08,670 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1149031943] [2022-04-28 12:20:08,671 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1149031943] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:08,671 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:08,671 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 12:20:08,671 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1914631787] [2022-04-28 12:20:08,671 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:20:08,671 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 78 [2022-04-28 12:20:08,672 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:20:08,672 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 12:20:08,736 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:20:08,736 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 12:20:08,736 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:08,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 12:20:08,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=175, Unknown=0, NotChecked=0, Total=210 [2022-04-28 12:20:08,737 INFO L87 Difference]: Start difference. First operand 194 states and 257 transitions. Second operand has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 12:20:14,957 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:14,957 INFO L93 Difference]: Finished difference Result 203 states and 265 transitions. [2022-04-28 12:20:14,957 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:20:14,958 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 78 [2022-04-28 12:20:14,958 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:20:14,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 12:20:14,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 97 transitions. [2022-04-28 12:20:14,960 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 12:20:14,961 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 97 transitions. [2022-04-28 12:20:14,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 97 transitions. [2022-04-28 12:20:15,091 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:15,095 INFO L225 Difference]: With dead ends: 203 [2022-04-28 12:20:15,095 INFO L226 Difference]: Without dead ends: 201 [2022-04-28 12:20:15,096 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 67 SyntacticMatches, 2 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 56 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=62, Invalid=318, Unknown=0, NotChecked=0, Total=380 [2022-04-28 12:20:15,096 INFO L413 NwaCegarLoop]: 37 mSDtfsCounter, 55 mSDsluCounter, 193 mSDsCounter, 0 mSdLazyCounter, 413 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 230 SdHoareTripleChecker+Invalid, 443 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 413 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:20:15,097 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 230 Invalid, 443 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 413 Invalid, 0 Unknown, 0 Unchecked, 2.3s Time] [2022-04-28 12:20:15,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 201 states. [2022-04-28 12:20:15,462 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 201 to 198. [2022-04-28 12:20:15,462 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:20:15,463 INFO L82 GeneralOperation]: Start isEquivalent. First operand 201 states. Second operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:20:15,463 INFO L74 IsIncluded]: Start isIncluded. First operand 201 states. Second operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:20:15,464 INFO L87 Difference]: Start difference. First operand 201 states. Second operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:20:15,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:15,469 INFO L93 Difference]: Finished difference Result 201 states and 263 transitions. [2022-04-28 12:20:15,469 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 263 transitions. [2022-04-28 12:20:15,469 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:15,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:15,470 INFO L74 IsIncluded]: Start isIncluded. First operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 201 states. [2022-04-28 12:20:15,470 INFO L87 Difference]: Start difference. First operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) Second operand 201 states. [2022-04-28 12:20:15,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:15,475 INFO L93 Difference]: Finished difference Result 201 states and 263 transitions. [2022-04-28 12:20:15,475 INFO L276 IsEmpty]: Start isEmpty. Operand 201 states and 263 transitions. [2022-04-28 12:20:15,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:15,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:15,476 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:20:15,476 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:20:15,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 198 states, 123 states have (on average 1.2357723577235773) internal successors, (152), 127 states have internal predecessors, (152), 55 states have call successors, (55), 20 states have call predecessors, (55), 19 states have return successors, (53), 50 states have call predecessors, (53), 53 states have call successors, (53) [2022-04-28 12:20:15,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 198 states to 198 states and 260 transitions. [2022-04-28 12:20:15,482 INFO L78 Accepts]: Start accepts. Automaton has 198 states and 260 transitions. Word has length 78 [2022-04-28 12:20:15,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:20:15,482 INFO L495 AbstractCegarLoop]: Abstraction has 198 states and 260 transitions. [2022-04-28 12:20:15,483 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.3846153846153846) internal successors, (31), 11 states have internal predecessors, (31), 5 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-04-28 12:20:15,483 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 198 states and 260 transitions. [2022-04-28 12:20:15,898 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:15,899 INFO L276 IsEmpty]: Start isEmpty. Operand 198 states and 260 transitions. [2022-04-28 12:20:15,899 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2022-04-28 12:20:15,899 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:20:15,899 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 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] [2022-04-28 12:20:15,925 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:20:16,103 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:20:16,103 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:20:16,104 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:20:16,104 INFO L85 PathProgramCache]: Analyzing trace with hash -1849570232, now seen corresponding path program 3 times [2022-04-28 12:20:16,104 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:16,104 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [160784629] [2022-04-28 12:20:16,104 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:20:16,104 INFO L85 PathProgramCache]: Analyzing trace with hash -1849570232, now seen corresponding path program 4 times [2022-04-28 12:20:16,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:20:16,105 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2099447015] [2022-04-28 12:20:16,105 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:20:16,105 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:20:16,121 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:20:16,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1764676646] [2022-04-28 12:20:16,121 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:20:16,122 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:20:16,122 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:20:16,123 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:20:16,124 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:20:16,234 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:20:16,234 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:20:16,235 INFO L263 TraceCheckSpWp]: Trace formula consists of 182 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 12:20:16,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:20:16,255 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:20:17,168 INFO L272 TraceCheckUtils]: 0: Hoare triple {14672#true} call ULTIMATE.init(); {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L290 TraceCheckUtils]: 1: Hoare triple {14672#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; {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L290 TraceCheckUtils]: 2: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14672#true} {14672#true} #98#return; {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L272 TraceCheckUtils]: 4: Hoare triple {14672#true} call #t~ret8 := main(); {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L290 TraceCheckUtils]: 5: Hoare triple {14672#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L272 TraceCheckUtils]: 6: Hoare triple {14672#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L290 TraceCheckUtils]: 7: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,169 INFO L290 TraceCheckUtils]: 8: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,170 INFO L290 TraceCheckUtils]: 9: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,170 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14672#true} {14672#true} #78#return; {14672#true} is VALID [2022-04-28 12:20:17,170 INFO L272 TraceCheckUtils]: 11: Hoare triple {14672#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,170 INFO L290 TraceCheckUtils]: 12: Hoare triple {14672#true} ~cond := #in~cond; {14713#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:20:17,170 INFO L290 TraceCheckUtils]: 13: Hoare triple {14713#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {14717#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:20:17,171 INFO L290 TraceCheckUtils]: 14: Hoare triple {14717#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {14717#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:20:17,171 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14717#(not (= |assume_abort_if_not_#in~cond| 0))} {14672#true} #80#return; {14724#(<= 1 main_~y~0)} is VALID [2022-04-28 12:20:17,172 INFO L290 TraceCheckUtils]: 16: Hoare triple {14724#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14728#(<= 1 main_~b~0)} is VALID [2022-04-28 12:20:17,172 INFO L272 TraceCheckUtils]: 17: Hoare triple {14728#(<= 1 main_~b~0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,172 INFO L290 TraceCheckUtils]: 18: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,172 INFO L290 TraceCheckUtils]: 19: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,172 INFO L290 TraceCheckUtils]: 20: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,173 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14672#true} {14728#(<= 1 main_~b~0)} #82#return; {14728#(<= 1 main_~b~0)} is VALID [2022-04-28 12:20:17,173 INFO L272 TraceCheckUtils]: 22: Hoare triple {14728#(<= 1 main_~b~0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,173 INFO L290 TraceCheckUtils]: 23: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,173 INFO L290 TraceCheckUtils]: 24: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,174 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14672#true} {14728#(<= 1 main_~b~0)} #84#return; {14728#(<= 1 main_~b~0)} is VALID [2022-04-28 12:20:17,174 INFO L290 TraceCheckUtils]: 27: Hoare triple {14728#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14728#(<= 1 main_~b~0)} is VALID [2022-04-28 12:20:17,175 INFO L290 TraceCheckUtils]: 28: Hoare triple {14728#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {14728#(<= 1 main_~b~0)} is VALID [2022-04-28 12:20:17,175 INFO L290 TraceCheckUtils]: 29: Hoare triple {14728#(<= 1 main_~b~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,176 INFO L290 TraceCheckUtils]: 30: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,176 INFO L290 TraceCheckUtils]: 31: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 100);havoc #t~post7; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,176 INFO L272 TraceCheckUtils]: 32: Hoare triple {14768#(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)); {14672#true} is VALID [2022-04-28 12:20:17,176 INFO L290 TraceCheckUtils]: 33: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,177 INFO L290 TraceCheckUtils]: 35: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,177 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #86#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,177 INFO L272 TraceCheckUtils]: 37: Hoare triple {14768#(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)); {14672#true} is VALID [2022-04-28 12:20:17,177 INFO L290 TraceCheckUtils]: 38: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,177 INFO L290 TraceCheckUtils]: 39: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,178 INFO L290 TraceCheckUtils]: 40: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,178 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #88#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,178 INFO L272 TraceCheckUtils]: 42: Hoare triple {14768#(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)); {14672#true} is VALID [2022-04-28 12:20:17,179 INFO L290 TraceCheckUtils]: 43: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,179 INFO L290 TraceCheckUtils]: 44: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,179 INFO L290 TraceCheckUtils]: 45: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,180 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #90#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,180 INFO L272 TraceCheckUtils]: 47: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,181 INFO L290 TraceCheckUtils]: 48: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,181 INFO L290 TraceCheckUtils]: 49: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,181 INFO L290 TraceCheckUtils]: 50: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,182 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {14672#true} {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #92#return; {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,183 INFO L290 TraceCheckUtils]: 52: Hoare triple {14768#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,183 INFO L290 TraceCheckUtils]: 53: Hoare triple {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,184 INFO L290 TraceCheckUtils]: 54: Hoare triple {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} assume !!(#t~post7 < 100);havoc #t~post7; {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,184 INFO L272 TraceCheckUtils]: 55: Hoare triple {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,184 INFO L290 TraceCheckUtils]: 56: Hoare triple {14672#true} ~cond := #in~cond; {14851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:17,184 INFO L290 TraceCheckUtils]: 57: Hoare triple {14851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:17,185 INFO L290 TraceCheckUtils]: 58: Hoare triple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:17,186 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} {14838#(and (<= 1 main_~k~0) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #86#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,186 INFO L272 TraceCheckUtils]: 60: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,186 INFO L290 TraceCheckUtils]: 61: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,186 INFO L290 TraceCheckUtils]: 62: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,186 INFO L290 TraceCheckUtils]: 63: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,187 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14672#true} {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #88#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,187 INFO L272 TraceCheckUtils]: 65: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,187 INFO L290 TraceCheckUtils]: 66: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,187 INFO L290 TraceCheckUtils]: 67: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,187 INFO L290 TraceCheckUtils]: 68: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,188 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {14672#true} {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #90#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,188 INFO L272 TraceCheckUtils]: 70: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:17,188 INFO L290 TraceCheckUtils]: 71: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:17,188 INFO L290 TraceCheckUtils]: 72: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:17,188 INFO L290 TraceCheckUtils]: 73: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:17,189 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14672#true} {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} #92#return; {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,191 INFO L290 TraceCheckUtils]: 75: Hoare triple {14862#(and (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~a~0 (+ main_~c~0 main_~b~0)) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,192 INFO L290 TraceCheckUtils]: 76: Hoare triple {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,193 INFO L290 TraceCheckUtils]: 77: Hoare triple {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} assume !!(#t~post7 < 100);havoc #t~post7; {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} is VALID [2022-04-28 12:20:17,194 INFO L272 TraceCheckUtils]: 78: Hoare triple {14911#(and (= (+ main_~a~0 (* (- 1) main_~b~0) (* (+ (- 1) main_~k~0) main_~b~0)) main_~a~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:20:17,194 INFO L290 TraceCheckUtils]: 79: Hoare triple {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14925#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:17,194 INFO L290 TraceCheckUtils]: 80: Hoare triple {14925#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14673#false} is VALID [2022-04-28 12:20:17,194 INFO L290 TraceCheckUtils]: 81: Hoare triple {14673#false} assume !false; {14673#false} is VALID [2022-04-28 12:20:17,195 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 30 proven. 29 refuted. 0 times theorem prover too weak. 106 trivial. 0 not checked. [2022-04-28 12:20:17,195 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:20:24,841 INFO L290 TraceCheckUtils]: 81: Hoare triple {14673#false} assume !false; {14673#false} is VALID [2022-04-28 12:20:24,841 INFO L290 TraceCheckUtils]: 80: Hoare triple {14925#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14673#false} is VALID [2022-04-28 12:20:24,842 INFO L290 TraceCheckUtils]: 79: Hoare triple {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14925#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:24,842 INFO L272 TraceCheckUtils]: 78: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14921#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:20:24,843 INFO L290 TraceCheckUtils]: 77: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,843 INFO L290 TraceCheckUtils]: 76: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,846 INFO L290 TraceCheckUtils]: 75: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,846 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {14672#true} {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #92#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,846 INFO L290 TraceCheckUtils]: 73: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,846 INFO L290 TraceCheckUtils]: 72: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,847 INFO L290 TraceCheckUtils]: 71: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,847 INFO L272 TraceCheckUtils]: 70: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,847 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {14672#true} {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #90#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,847 INFO L290 TraceCheckUtils]: 68: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,847 INFO L290 TraceCheckUtils]: 67: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,847 INFO L290 TraceCheckUtils]: 66: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,848 INFO L272 TraceCheckUtils]: 65: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,848 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14672#true} {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #88#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,848 INFO L290 TraceCheckUtils]: 63: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,848 INFO L290 TraceCheckUtils]: 62: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,848 INFO L290 TraceCheckUtils]: 61: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,848 INFO L272 TraceCheckUtils]: 60: Hoare triple {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,849 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} {14672#true} #86#return; {14941#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:20:24,849 INFO L290 TraceCheckUtils]: 58: Hoare triple {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:24,850 INFO L290 TraceCheckUtils]: 57: Hoare triple {15008#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:24,850 INFO L290 TraceCheckUtils]: 56: Hoare triple {14672#true} ~cond := #in~cond; {15008#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:20:24,850 INFO L272 TraceCheckUtils]: 55: Hoare triple {14672#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,850 INFO L290 TraceCheckUtils]: 54: Hoare triple {14672#true} assume !!(#t~post7 < 100);havoc #t~post7; {14672#true} is VALID [2022-04-28 12:20:24,850 INFO L290 TraceCheckUtils]: 53: Hoare triple {14672#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14672#true} is VALID [2022-04-28 12:20:24,850 INFO L290 TraceCheckUtils]: 52: Hoare triple {14672#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {14672#true} is VALID [2022-04-28 12:20:24,850 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {14672#true} {14672#true} #92#return; {14672#true} is VALID [2022-04-28 12:20:24,850 INFO L290 TraceCheckUtils]: 50: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 49: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 48: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L272 TraceCheckUtils]: 47: Hoare triple {14672#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14672#true} {14672#true} #90#return; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 45: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 44: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 43: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L272 TraceCheckUtils]: 42: Hoare triple {14672#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14672#true} {14672#true} #88#return; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 40: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,851 INFO L290 TraceCheckUtils]: 39: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 38: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L272 TraceCheckUtils]: 37: Hoare triple {14672#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14672#true} {14672#true} #86#return; {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 35: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 34: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 33: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L272 TraceCheckUtils]: 32: Hoare triple {14672#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 31: Hoare triple {14672#true} assume !!(#t~post7 < 100);havoc #t~post7; {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 30: Hoare triple {14672#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14672#true} is VALID [2022-04-28 12:20:24,852 INFO L290 TraceCheckUtils]: 29: Hoare triple {14672#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 28: Hoare triple {14672#true} assume !!(#t~post6 < 100);havoc #t~post6; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 27: Hoare triple {14672#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {14672#true} {14672#true} #84#return; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 25: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 24: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 23: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L272 TraceCheckUtils]: 22: Hoare triple {14672#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {14672#true} {14672#true} #82#return; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 20: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,853 INFO L290 TraceCheckUtils]: 19: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L290 TraceCheckUtils]: 18: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L272 TraceCheckUtils]: 17: Hoare triple {14672#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L290 TraceCheckUtils]: 16: Hoare triple {14672#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {14672#true} {14672#true} #80#return; {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L290 TraceCheckUtils]: 14: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L290 TraceCheckUtils]: 13: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L290 TraceCheckUtils]: 12: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L272 TraceCheckUtils]: 11: Hoare triple {14672#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14672#true} {14672#true} #78#return; {14672#true} is VALID [2022-04-28 12:20:24,854 INFO L290 TraceCheckUtils]: 9: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L290 TraceCheckUtils]: 8: Hoare triple {14672#true} assume !(0 == ~cond); {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L290 TraceCheckUtils]: 7: Hoare triple {14672#true} ~cond := #in~cond; {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {14672#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {14672#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {14672#true} call #t~ret8 := main(); {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14672#true} {14672#true} #98#return; {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L290 TraceCheckUtils]: 2: Hoare triple {14672#true} assume true; {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {14672#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; {14672#true} is VALID [2022-04-28 12:20:24,855 INFO L272 TraceCheckUtils]: 0: Hoare triple {14672#true} call ULTIMATE.init(); {14672#true} is VALID [2022-04-28 12:20:24,856 INFO L134 CoverageAnalysis]: Checked inductivity of 165 backedges. 37 proven. 10 refuted. 0 times theorem prover too weak. 118 trivial. 0 not checked. [2022-04-28 12:20:24,856 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:20:24,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2099447015] [2022-04-28 12:20:24,856 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:20:24,856 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1764676646] [2022-04-28 12:20:24,856 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1764676646] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:20:24,856 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:20:24,856 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 7] total 16 [2022-04-28 12:20:24,856 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:20:24,857 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [160784629] [2022-04-28 12:20:24,857 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [160784629] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:24,857 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:24,857 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 12:20:24,857 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2111651965] [2022-04-28 12:20:24,857 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:20:24,857 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 82 [2022-04-28 12:20:24,858 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:20:24,858 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 12:20:24,905 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:20:24,905 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 12:20:24,905 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:24,905 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 12:20:24,905 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=41, Invalid=199, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:20:24,906 INFO L87 Difference]: Start difference. First operand 198 states and 260 transitions. Second operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 12:20:27,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:27,598 INFO L93 Difference]: Finished difference Result 212 states and 278 transitions. [2022-04-28 12:20:27,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:20:27,598 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) Word has length 82 [2022-04-28 12:20:27,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:20:27,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 12:20:27,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 106 transitions. [2022-04-28 12:20:27,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 12:20:27,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 106 transitions. [2022-04-28 12:20:27,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 106 transitions. [2022-04-28 12:20:27,720 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:20:27,725 INFO L225 Difference]: With dead ends: 212 [2022-04-28 12:20:27,725 INFO L226 Difference]: Without dead ends: 210 [2022-04-28 12:20:27,726 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 170 GetRequests, 147 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=84, Invalid=422, Unknown=0, NotChecked=0, Total=506 [2022-04-28 12:20:27,727 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 55 mSDsluCounter, 183 mSDsCounter, 0 mSdLazyCounter, 457 mSolverCounterSat, 51 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 223 SdHoareTripleChecker+Invalid, 508 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 51 IncrementalHoareTripleChecker+Valid, 457 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:20:27,727 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [60 Valid, 223 Invalid, 508 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [51 Valid, 457 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-28 12:20:27,728 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 210 states. [2022-04-28 12:20:28,064 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 210 to 203. [2022-04-28 12:20:28,064 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:20:28,065 INFO L82 GeneralOperation]: Start isEquivalent. First operand 210 states. Second operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:28,065 INFO L74 IsIncluded]: Start isIncluded. First operand 210 states. Second operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:28,065 INFO L87 Difference]: Start difference. First operand 210 states. Second operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:28,072 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:28,072 INFO L93 Difference]: Finished difference Result 210 states and 276 transitions. [2022-04-28 12:20:28,072 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 276 transitions. [2022-04-28 12:20:28,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:28,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:28,073 INFO L74 IsIncluded]: Start isIncluded. First operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-28 12:20:28,074 INFO L87 Difference]: Start difference. First operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 210 states. [2022-04-28 12:20:28,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:28,084 INFO L93 Difference]: Finished difference Result 210 states and 276 transitions. [2022-04-28 12:20:28,084 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 276 transitions. [2022-04-28 12:20:28,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:28,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:28,084 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:20:28,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:20:28,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 203 states, 126 states have (on average 1.2301587301587302) internal successors, (155), 131 states have internal predecessors, (155), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:28,091 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 203 states to 203 states and 265 transitions. [2022-04-28 12:20:28,092 INFO L78 Accepts]: Start accepts. Automaton has 203 states and 265 transitions. Word has length 82 [2022-04-28 12:20:28,092 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:20:28,092 INFO L495 AbstractCegarLoop]: Abstraction has 203 states and 265 transitions. [2022-04-28 12:20:28,092 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 11 states have internal predecessors, (30), 6 states have call successors, (15), 2 states have call predecessors, (15), 3 states have return successors, (13), 5 states have call predecessors, (13), 5 states have call successors, (13) [2022-04-28 12:20:28,092 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 203 states and 265 transitions. [2022-04-28 12:20:28,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 265 edges. 265 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:28,424 INFO L276 IsEmpty]: Start isEmpty. Operand 203 states and 265 transitions. [2022-04-28 12:20:28,427 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 84 [2022-04-28 12:20:28,427 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:20:28,428 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:20:28,454 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:20:28,647 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:20:28,647 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:20:28,648 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:20:28,648 INFO L85 PathProgramCache]: Analyzing trace with hash 1768368813, now seen corresponding path program 1 times [2022-04-28 12:20:28,648 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:28,648 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2116134836] [2022-04-28 12:20:28,648 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:20:28,648 INFO L85 PathProgramCache]: Analyzing trace with hash 1768368813, now seen corresponding path program 2 times [2022-04-28 12:20:28,649 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:20:28,649 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1544869539] [2022-04-28 12:20:28,649 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:20:28,649 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:20:28,664 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:20:28,665 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [817259593] [2022-04-28 12:20:28,665 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:20:28,665 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:20:28,665 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:20:28,666 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:20:28,688 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:20:28,721 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:20:28,721 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:20:28,722 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 12:20:28,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:20:28,737 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:20:29,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {16443#true} call ULTIMATE.init(); {16443#true} is VALID [2022-04-28 12:20:29,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {16443#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; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16451#(<= ~counter~0 0)} {16443#true} #98#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {16451#(<= ~counter~0 0)} call #t~ret8 := main(); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,053 INFO L290 TraceCheckUtils]: 5: Hoare triple {16451#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,053 INFO L272 TraceCheckUtils]: 6: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,053 INFO L290 TraceCheckUtils]: 7: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,054 INFO L290 TraceCheckUtils]: 9: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,054 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #78#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,055 INFO L272 TraceCheckUtils]: 11: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,055 INFO L290 TraceCheckUtils]: 12: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,055 INFO L290 TraceCheckUtils]: 13: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,055 INFO L290 TraceCheckUtils]: 14: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,060 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #80#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,061 INFO L290 TraceCheckUtils]: 16: Hoare triple {16451#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,061 INFO L272 TraceCheckUtils]: 17: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,062 INFO L290 TraceCheckUtils]: 18: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,062 INFO L290 TraceCheckUtils]: 19: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,063 INFO L290 TraceCheckUtils]: 20: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,063 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #82#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,063 INFO L272 TraceCheckUtils]: 22: Hoare triple {16451#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {16451#(<= ~counter~0 0)} ~cond := #in~cond; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,064 INFO L290 TraceCheckUtils]: 24: Hoare triple {16451#(<= ~counter~0 0)} assume !(0 == ~cond); {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,064 INFO L290 TraceCheckUtils]: 25: Hoare triple {16451#(<= ~counter~0 0)} assume true; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,065 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16451#(<= ~counter~0 0)} {16451#(<= ~counter~0 0)} #84#return; {16451#(<= ~counter~0 0)} is VALID [2022-04-28 12:20:29,065 INFO L290 TraceCheckUtils]: 27: Hoare triple {16451#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16530#(<= ~counter~0 1)} is VALID [2022-04-28 12:20:29,066 INFO L290 TraceCheckUtils]: 28: Hoare triple {16530#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {16530#(<= ~counter~0 1)} is VALID [2022-04-28 12:20:29,066 INFO L290 TraceCheckUtils]: 29: Hoare triple {16530#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16530#(<= ~counter~0 1)} is VALID [2022-04-28 12:20:29,066 INFO L290 TraceCheckUtils]: 30: Hoare triple {16530#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,067 INFO L290 TraceCheckUtils]: 31: Hoare triple {16540#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,067 INFO L272 TraceCheckUtils]: 32: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,068 INFO L290 TraceCheckUtils]: 33: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,068 INFO L290 TraceCheckUtils]: 34: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,068 INFO L290 TraceCheckUtils]: 35: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,069 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #86#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,069 INFO L272 TraceCheckUtils]: 37: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,069 INFO L290 TraceCheckUtils]: 38: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,070 INFO L290 TraceCheckUtils]: 39: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,070 INFO L290 TraceCheckUtils]: 40: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,070 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #88#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,071 INFO L272 TraceCheckUtils]: 42: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,071 INFO L290 TraceCheckUtils]: 43: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,072 INFO L290 TraceCheckUtils]: 44: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,072 INFO L290 TraceCheckUtils]: 45: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,072 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #90#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,073 INFO L272 TraceCheckUtils]: 47: Hoare triple {16540#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,073 INFO L290 TraceCheckUtils]: 48: Hoare triple {16540#(<= ~counter~0 2)} ~cond := #in~cond; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,074 INFO L290 TraceCheckUtils]: 49: Hoare triple {16540#(<= ~counter~0 2)} assume !(0 == ~cond); {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,074 INFO L290 TraceCheckUtils]: 50: Hoare triple {16540#(<= ~counter~0 2)} assume true; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,074 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {16540#(<= ~counter~0 2)} {16540#(<= ~counter~0 2)} #92#return; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,075 INFO L290 TraceCheckUtils]: 52: Hoare triple {16540#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16540#(<= ~counter~0 2)} is VALID [2022-04-28 12:20:29,075 INFO L290 TraceCheckUtils]: 53: Hoare triple {16540#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,076 INFO L290 TraceCheckUtils]: 54: Hoare triple {16610#(<= ~counter~0 3)} assume !!(#t~post7 < 100);havoc #t~post7; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,076 INFO L272 TraceCheckUtils]: 55: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,076 INFO L290 TraceCheckUtils]: 56: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,077 INFO L290 TraceCheckUtils]: 57: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,077 INFO L290 TraceCheckUtils]: 58: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,077 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #86#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,078 INFO L272 TraceCheckUtils]: 60: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,078 INFO L290 TraceCheckUtils]: 61: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,079 INFO L290 TraceCheckUtils]: 62: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,079 INFO L290 TraceCheckUtils]: 63: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,079 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #88#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,080 INFO L272 TraceCheckUtils]: 65: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,080 INFO L290 TraceCheckUtils]: 66: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,080 INFO L290 TraceCheckUtils]: 67: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,081 INFO L290 TraceCheckUtils]: 68: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,081 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #90#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,082 INFO L272 TraceCheckUtils]: 70: Hoare triple {16610#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,082 INFO L290 TraceCheckUtils]: 71: Hoare triple {16610#(<= ~counter~0 3)} ~cond := #in~cond; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,082 INFO L290 TraceCheckUtils]: 72: Hoare triple {16610#(<= ~counter~0 3)} assume !(0 == ~cond); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,083 INFO L290 TraceCheckUtils]: 73: Hoare triple {16610#(<= ~counter~0 3)} assume true; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,083 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {16610#(<= ~counter~0 3)} {16610#(<= ~counter~0 3)} #92#return; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,084 INFO L290 TraceCheckUtils]: 75: Hoare triple {16610#(<= ~counter~0 3)} assume !(~c~0 >= ~b~0); {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,084 INFO L290 TraceCheckUtils]: 76: Hoare triple {16610#(<= ~counter~0 3)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16610#(<= ~counter~0 3)} is VALID [2022-04-28 12:20:29,084 INFO L290 TraceCheckUtils]: 77: Hoare triple {16610#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16683#(<= |main_#t~post6| 3)} is VALID [2022-04-28 12:20:29,085 INFO L290 TraceCheckUtils]: 78: Hoare triple {16683#(<= |main_#t~post6| 3)} assume !(#t~post6 < 100);havoc #t~post6; {16444#false} is VALID [2022-04-28 12:20:29,085 INFO L272 TraceCheckUtils]: 79: Hoare triple {16444#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {16444#false} is VALID [2022-04-28 12:20:29,085 INFO L290 TraceCheckUtils]: 80: Hoare triple {16444#false} ~cond := #in~cond; {16444#false} is VALID [2022-04-28 12:20:29,085 INFO L290 TraceCheckUtils]: 81: Hoare triple {16444#false} assume 0 == ~cond; {16444#false} is VALID [2022-04-28 12:20:29,085 INFO L290 TraceCheckUtils]: 82: Hoare triple {16444#false} assume !false; {16444#false} is VALID [2022-04-28 12:20:29,085 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 16 proven. 73 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-28 12:20:29,085 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:20:29,390 INFO L290 TraceCheckUtils]: 82: Hoare triple {16444#false} assume !false; {16444#false} is VALID [2022-04-28 12:20:29,391 INFO L290 TraceCheckUtils]: 81: Hoare triple {16444#false} assume 0 == ~cond; {16444#false} is VALID [2022-04-28 12:20:29,391 INFO L290 TraceCheckUtils]: 80: Hoare triple {16444#false} ~cond := #in~cond; {16444#false} is VALID [2022-04-28 12:20:29,391 INFO L272 TraceCheckUtils]: 79: Hoare triple {16444#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {16444#false} is VALID [2022-04-28 12:20:29,391 INFO L290 TraceCheckUtils]: 78: Hoare triple {16711#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {16444#false} is VALID [2022-04-28 12:20:29,391 INFO L290 TraceCheckUtils]: 77: Hoare triple {16715#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16711#(< |main_#t~post6| 100)} is VALID [2022-04-28 12:20:29,392 INFO L290 TraceCheckUtils]: 76: Hoare triple {16715#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,392 INFO L290 TraceCheckUtils]: 75: Hoare triple {16715#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,393 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {16443#true} {16715#(< ~counter~0 100)} #92#return; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,393 INFO L290 TraceCheckUtils]: 73: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,393 INFO L290 TraceCheckUtils]: 72: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,393 INFO L290 TraceCheckUtils]: 71: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,393 INFO L272 TraceCheckUtils]: 70: Hoare triple {16715#(< ~counter~0 100)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,393 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {16443#true} {16715#(< ~counter~0 100)} #90#return; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,393 INFO L290 TraceCheckUtils]: 68: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,394 INFO L290 TraceCheckUtils]: 67: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,394 INFO L290 TraceCheckUtils]: 66: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,394 INFO L272 TraceCheckUtils]: 65: Hoare triple {16715#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,394 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16443#true} {16715#(< ~counter~0 100)} #88#return; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,394 INFO L290 TraceCheckUtils]: 63: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,394 INFO L290 TraceCheckUtils]: 62: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,394 INFO L290 TraceCheckUtils]: 61: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,395 INFO L272 TraceCheckUtils]: 60: Hoare triple {16715#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,395 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16443#true} {16715#(< ~counter~0 100)} #86#return; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,395 INFO L290 TraceCheckUtils]: 58: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,395 INFO L290 TraceCheckUtils]: 57: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,395 INFO L290 TraceCheckUtils]: 56: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,395 INFO L272 TraceCheckUtils]: 55: Hoare triple {16715#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,396 INFO L290 TraceCheckUtils]: 54: Hoare triple {16715#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,396 INFO L290 TraceCheckUtils]: 53: Hoare triple {16788#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16715#(< ~counter~0 100)} is VALID [2022-04-28 12:20:29,397 INFO L290 TraceCheckUtils]: 52: Hoare triple {16788#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,397 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {16443#true} {16788#(< ~counter~0 99)} #92#return; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,397 INFO L290 TraceCheckUtils]: 50: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,397 INFO L290 TraceCheckUtils]: 49: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,397 INFO L290 TraceCheckUtils]: 48: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,398 INFO L272 TraceCheckUtils]: 47: Hoare triple {16788#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,398 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16443#true} {16788#(< ~counter~0 99)} #90#return; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,398 INFO L290 TraceCheckUtils]: 45: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,398 INFO L290 TraceCheckUtils]: 44: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,398 INFO L290 TraceCheckUtils]: 43: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,398 INFO L272 TraceCheckUtils]: 42: Hoare triple {16788#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,399 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16443#true} {16788#(< ~counter~0 99)} #88#return; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,399 INFO L290 TraceCheckUtils]: 40: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,399 INFO L290 TraceCheckUtils]: 39: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,399 INFO L290 TraceCheckUtils]: 38: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,399 INFO L272 TraceCheckUtils]: 37: Hoare triple {16788#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,400 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16443#true} {16788#(< ~counter~0 99)} #86#return; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,400 INFO L290 TraceCheckUtils]: 35: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,400 INFO L290 TraceCheckUtils]: 34: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,400 INFO L290 TraceCheckUtils]: 33: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,400 INFO L272 TraceCheckUtils]: 32: Hoare triple {16788#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,400 INFO L290 TraceCheckUtils]: 31: Hoare triple {16788#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,401 INFO L290 TraceCheckUtils]: 30: Hoare triple {16858#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16788#(< ~counter~0 99)} is VALID [2022-04-28 12:20:29,401 INFO L290 TraceCheckUtils]: 29: Hoare triple {16858#(< ~counter~0 98)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {16858#(< ~counter~0 98)} is VALID [2022-04-28 12:20:29,401 INFO L290 TraceCheckUtils]: 28: Hoare triple {16858#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {16858#(< ~counter~0 98)} is VALID [2022-04-28 12:20:29,402 INFO L290 TraceCheckUtils]: 27: Hoare triple {16868#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16858#(< ~counter~0 98)} is VALID [2022-04-28 12:20:29,402 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {16443#true} {16868#(< ~counter~0 97)} #84#return; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,402 INFO L290 TraceCheckUtils]: 25: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L290 TraceCheckUtils]: 24: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L290 TraceCheckUtils]: 23: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L272 TraceCheckUtils]: 22: Hoare triple {16868#(< ~counter~0 97)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {16443#true} {16868#(< ~counter~0 97)} #82#return; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,403 INFO L290 TraceCheckUtils]: 20: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L290 TraceCheckUtils]: 19: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L290 TraceCheckUtils]: 18: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,403 INFO L272 TraceCheckUtils]: 17: Hoare triple {16868#(< ~counter~0 97)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,404 INFO L290 TraceCheckUtils]: 16: Hoare triple {16868#(< ~counter~0 97)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,404 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16443#true} {16868#(< ~counter~0 97)} #80#return; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,404 INFO L290 TraceCheckUtils]: 14: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,404 INFO L290 TraceCheckUtils]: 13: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,404 INFO L290 TraceCheckUtils]: 12: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,404 INFO L272 TraceCheckUtils]: 11: Hoare triple {16868#(< ~counter~0 97)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,405 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16443#true} {16868#(< ~counter~0 97)} #78#return; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,405 INFO L290 TraceCheckUtils]: 9: Hoare triple {16443#true} assume true; {16443#true} is VALID [2022-04-28 12:20:29,405 INFO L290 TraceCheckUtils]: 8: Hoare triple {16443#true} assume !(0 == ~cond); {16443#true} is VALID [2022-04-28 12:20:29,405 INFO L290 TraceCheckUtils]: 7: Hoare triple {16443#true} ~cond := #in~cond; {16443#true} is VALID [2022-04-28 12:20:29,405 INFO L272 TraceCheckUtils]: 6: Hoare triple {16868#(< ~counter~0 97)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16443#true} is VALID [2022-04-28 12:20:29,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {16868#(< ~counter~0 97)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,406 INFO L272 TraceCheckUtils]: 4: Hoare triple {16868#(< ~counter~0 97)} call #t~ret8 := main(); {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,406 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16868#(< ~counter~0 97)} {16443#true} #98#return; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,406 INFO L290 TraceCheckUtils]: 2: Hoare triple {16868#(< ~counter~0 97)} assume true; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,407 INFO L290 TraceCheckUtils]: 1: Hoare triple {16443#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; {16868#(< ~counter~0 97)} is VALID [2022-04-28 12:20:29,407 INFO L272 TraceCheckUtils]: 0: Hoare triple {16443#true} call ULTIMATE.init(); {16443#true} is VALID [2022-04-28 12:20:29,407 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-28 12:20:29,407 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:20:29,407 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1544869539] [2022-04-28 12:20:29,407 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:20:29,407 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [817259593] [2022-04-28 12:20:29,407 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [817259593] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:20:29,407 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:20:29,407 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 12:20:29,408 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:20:29,408 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2116134836] [2022-04-28 12:20:29,408 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2116134836] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:29,408 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:29,408 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 12:20:29,408 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1017101841] [2022-04-28 12:20:29,408 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:20:29,408 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-28 12:20:29,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:20:29,409 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:29,451 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:20:29,451 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 12:20:29,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:29,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 12:20:29,452 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 12:20:29,452 INFO L87 Difference]: Start difference. First operand 203 states and 265 transitions. Second operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:30,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:30,004 INFO L93 Difference]: Finished difference Result 214 states and 277 transitions. [2022-04-28 12:20:30,004 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 12:20:30,005 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 83 [2022-04-28 12:20:30,005 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:20:30,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:30,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-28 12:20:30,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:30,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-28 12:20:30,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-28 12:20:30,096 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:30,101 INFO L225 Difference]: With dead ends: 214 [2022-04-28 12:20:30,101 INFO L226 Difference]: Without dead ends: 206 [2022-04-28 12:20:30,101 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 167 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:20:30,102 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 18 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 41 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 67 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 41 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 12:20:30,102 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [18 Valid, 160 Invalid, 67 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 12:20:30,102 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2022-04-28 12:20:30,497 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 206. [2022-04-28 12:20:30,497 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:20:30,498 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:30,498 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:30,499 INFO L87 Difference]: Start difference. First operand 206 states. Second operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:30,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:30,505 INFO L93 Difference]: Finished difference Result 206 states and 268 transitions. [2022-04-28 12:20:30,505 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 268 transitions. [2022-04-28 12:20:30,506 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:30,506 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:30,506 INFO L74 IsIncluded]: Start isIncluded. First operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 206 states. [2022-04-28 12:20:30,506 INFO L87 Difference]: Start difference. First operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) Second operand 206 states. [2022-04-28 12:20:30,512 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:30,512 INFO L93 Difference]: Finished difference Result 206 states and 268 transitions. [2022-04-28 12:20:30,513 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 268 transitions. [2022-04-28 12:20:30,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:30,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:30,513 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:20:30,513 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:20:30,514 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 206 states, 129 states have (on average 1.2248062015503876) internal successors, (158), 134 states have internal predecessors, (158), 56 states have call successors, (56), 21 states have call predecessors, (56), 20 states have return successors, (54), 50 states have call predecessors, (54), 54 states have call successors, (54) [2022-04-28 12:20:30,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 206 states to 206 states and 268 transitions. [2022-04-28 12:20:30,520 INFO L78 Accepts]: Start accepts. Automaton has 206 states and 268 transitions. Word has length 83 [2022-04-28 12:20:30,520 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:20:30,520 INFO L495 AbstractCegarLoop]: Abstraction has 206 states and 268 transitions. [2022-04-28 12:20:30,521 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.0) internal successors, (28), 6 states have internal predecessors, (28), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:30,521 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 206 states and 268 transitions. [2022-04-28 12:20:30,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 268 edges. 268 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:30,908 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 268 transitions. [2022-04-28 12:20:30,908 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 85 [2022-04-28 12:20:30,908 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:20:30,908 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:20:30,924 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:20:31,109 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:20:31,109 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:20:31,109 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:20:31,109 INFO L85 PathProgramCache]: Analyzing trace with hash -1017110725, now seen corresponding path program 1 times [2022-04-28 12:20:31,110 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:31,110 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [46004251] [2022-04-28 12:20:31,110 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:20:31,110 INFO L85 PathProgramCache]: Analyzing trace with hash -1017110725, now seen corresponding path program 2 times [2022-04-28 12:20:31,110 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:20:31,110 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [552592030] [2022-04-28 12:20:31,110 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:20:31,111 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:20:31,123 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:20:31,123 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [578478144] [2022-04-28 12:20:31,123 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:20:31,123 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:20:31,124 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:20:31,124 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:20:31,138 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:20:31,183 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:20:31,184 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:20:31,185 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 12:20:31,201 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:20:31,202 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:20:31,836 INFO L272 TraceCheckUtils]: 0: Hoare triple {18208#true} call ULTIMATE.init(); {18208#true} is VALID [2022-04-28 12:20:31,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {18208#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; {18208#true} is VALID [2022-04-28 12:20:31,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18208#true} {18208#true} #98#return; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L272 TraceCheckUtils]: 4: Hoare triple {18208#true} call #t~ret8 := main(); {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L290 TraceCheckUtils]: 5: Hoare triple {18208#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L272 TraceCheckUtils]: 6: Hoare triple {18208#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L290 TraceCheckUtils]: 7: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L290 TraceCheckUtils]: 8: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L290 TraceCheckUtils]: 9: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18208#true} {18208#true} #78#return; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L272 TraceCheckUtils]: 11: Hoare triple {18208#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L290 TraceCheckUtils]: 12: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,837 INFO L290 TraceCheckUtils]: 13: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,838 INFO L290 TraceCheckUtils]: 14: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,838 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18208#true} {18208#true} #80#return; {18208#true} is VALID [2022-04-28 12:20:31,838 INFO L290 TraceCheckUtils]: 16: Hoare triple {18208#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18261#(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:20:31,839 INFO L272 TraceCheckUtils]: 17: Hoare triple {18261#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,839 INFO L290 TraceCheckUtils]: 18: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,839 INFO L290 TraceCheckUtils]: 19: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,839 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18208#true} {18261#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {18261#(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:20:31,840 INFO L272 TraceCheckUtils]: 22: Hoare triple {18261#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,840 INFO L290 TraceCheckUtils]: 23: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,840 INFO L290 TraceCheckUtils]: 24: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,840 INFO L290 TraceCheckUtils]: 25: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,840 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18208#true} {18261#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {18261#(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:20:31,841 INFO L290 TraceCheckUtils]: 27: Hoare triple {18261#(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; {18261#(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:20:31,841 INFO L290 TraceCheckUtils]: 28: Hoare triple {18261#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {18261#(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:20:31,842 INFO L290 TraceCheckUtils]: 29: Hoare triple {18261#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18301#(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:20:31,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {18301#(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; {18301#(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:20:31,843 INFO L290 TraceCheckUtils]: 31: Hoare triple {18301#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {18301#(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:20:31,843 INFO L272 TraceCheckUtils]: 32: Hoare triple {18301#(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)); {18208#true} is VALID [2022-04-28 12:20:31,843 INFO L290 TraceCheckUtils]: 33: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,843 INFO L290 TraceCheckUtils]: 34: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,843 INFO L290 TraceCheckUtils]: 35: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,843 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18208#true} {18301#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #86#return; {18301#(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:20:31,844 INFO L272 TraceCheckUtils]: 37: Hoare triple {18301#(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)); {18208#true} is VALID [2022-04-28 12:20:31,844 INFO L290 TraceCheckUtils]: 38: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,844 INFO L290 TraceCheckUtils]: 39: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,844 INFO L290 TraceCheckUtils]: 40: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,844 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18208#true} {18301#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #88#return; {18301#(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:20:31,845 INFO L272 TraceCheckUtils]: 42: Hoare triple {18301#(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)); {18208#true} is VALID [2022-04-28 12:20:31,845 INFO L290 TraceCheckUtils]: 43: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,845 INFO L290 TraceCheckUtils]: 44: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,845 INFO L290 TraceCheckUtils]: 45: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,845 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18208#true} {18301#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {18301#(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:20:31,846 INFO L272 TraceCheckUtils]: 47: Hoare triple {18301#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,846 INFO L290 TraceCheckUtils]: 48: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,846 INFO L290 TraceCheckUtils]: 49: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,846 INFO L290 TraceCheckUtils]: 50: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,846 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {18208#true} {18301#(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))} #92#return; {18301#(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:20:31,847 INFO L290 TraceCheckUtils]: 52: Hoare triple {18301#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,847 INFO L290 TraceCheckUtils]: 53: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,848 INFO L290 TraceCheckUtils]: 54: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,848 INFO L272 TraceCheckUtils]: 55: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,848 INFO L290 TraceCheckUtils]: 56: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,848 INFO L290 TraceCheckUtils]: 57: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,848 INFO L290 TraceCheckUtils]: 58: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,849 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #86#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,849 INFO L272 TraceCheckUtils]: 60: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,849 INFO L290 TraceCheckUtils]: 61: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,849 INFO L290 TraceCheckUtils]: 62: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,849 INFO L290 TraceCheckUtils]: 63: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,852 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #88#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,852 INFO L272 TraceCheckUtils]: 65: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,852 INFO L290 TraceCheckUtils]: 66: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,852 INFO L290 TraceCheckUtils]: 67: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,852 INFO L290 TraceCheckUtils]: 68: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,853 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #90#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,853 INFO L272 TraceCheckUtils]: 70: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:31,853 INFO L290 TraceCheckUtils]: 71: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:31,853 INFO L290 TraceCheckUtils]: 72: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:31,853 INFO L290 TraceCheckUtils]: 73: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:31,854 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {18208#true} {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} #92#return; {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,855 INFO L290 TraceCheckUtils]: 75: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:20:31,855 INFO L290 TraceCheckUtils]: 76: Hoare triple {18371#(and (= main_~r~0 0) (= main_~y~0 (+ (* (- 1) main_~c~0) main_~x~0)) (= main_~s~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:20:31,856 INFO L290 TraceCheckUtils]: 77: Hoare triple {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:20:31,856 INFO L290 TraceCheckUtils]: 78: Hoare triple {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:20:31,857 INFO L290 TraceCheckUtils]: 79: Hoare triple {18444#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18454#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 12:20:31,858 INFO L272 TraceCheckUtils]: 80: Hoare triple {18454#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:20:31,858 INFO L290 TraceCheckUtils]: 81: Hoare triple {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:31,858 INFO L290 TraceCheckUtils]: 82: Hoare triple {18462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18209#false} is VALID [2022-04-28 12:20:31,858 INFO L290 TraceCheckUtils]: 83: Hoare triple {18209#false} assume !false; {18209#false} is VALID [2022-04-28 12:20:31,859 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 16 proven. 10 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-28 12:20:31,859 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:20:32,411 INFO L290 TraceCheckUtils]: 83: Hoare triple {18209#false} assume !false; {18209#false} is VALID [2022-04-28 12:20:32,412 INFO L290 TraceCheckUtils]: 82: Hoare triple {18462#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18209#false} is VALID [2022-04-28 12:20:32,412 INFO L290 TraceCheckUtils]: 81: Hoare triple {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18462#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:32,413 INFO L272 TraceCheckUtils]: 80: Hoare triple {18478#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {18458#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:20:32,414 INFO L290 TraceCheckUtils]: 79: Hoare triple {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {18478#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-28 12:20:32,414 INFO L290 TraceCheckUtils]: 78: Hoare triple {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 12:20:32,415 INFO L290 TraceCheckUtils]: 77: Hoare triple {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 12:20:32,969 INFO L290 TraceCheckUtils]: 76: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18482#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 12:20:32,970 INFO L290 TraceCheckUtils]: 75: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !(~c~0 >= ~b~0); {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:32,970 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #92#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:32,970 INFO L290 TraceCheckUtils]: 73: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:32,971 INFO L290 TraceCheckUtils]: 72: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:32,971 INFO L290 TraceCheckUtils]: 71: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:32,971 INFO L272 TraceCheckUtils]: 70: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:32,971 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #90#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:32,971 INFO L290 TraceCheckUtils]: 68: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:32,972 INFO L290 TraceCheckUtils]: 67: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:32,972 INFO L290 TraceCheckUtils]: 66: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:32,972 INFO L272 TraceCheckUtils]: 65: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:32,972 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #88#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:32,972 INFO L290 TraceCheckUtils]: 63: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:32,972 INFO L290 TraceCheckUtils]: 62: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:32,973 INFO L290 TraceCheckUtils]: 61: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:32,973 INFO L272 TraceCheckUtils]: 60: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:32,973 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18208#true} {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #86#return; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:32,973 INFO L290 TraceCheckUtils]: 58: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:32,973 INFO L290 TraceCheckUtils]: 57: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:32,973 INFO L290 TraceCheckUtils]: 56: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:32,974 INFO L272 TraceCheckUtils]: 55: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:32,974 INFO L290 TraceCheckUtils]: 54: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} assume !!(#t~post7 < 100);havoc #t~post7; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:32,974 INFO L290 TraceCheckUtils]: 53: Hoare triple {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:33,231 INFO L290 TraceCheckUtils]: 52: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {18492#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) 0))} is VALID [2022-04-28 12:20:33,232 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #92#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,233 INFO L290 TraceCheckUtils]: 50: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,233 INFO L290 TraceCheckUtils]: 49: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,233 INFO L290 TraceCheckUtils]: 48: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,233 INFO L272 TraceCheckUtils]: 47: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,233 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #90#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,233 INFO L290 TraceCheckUtils]: 45: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,234 INFO L290 TraceCheckUtils]: 44: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,234 INFO L290 TraceCheckUtils]: 43: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,234 INFO L272 TraceCheckUtils]: 42: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,234 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #88#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,234 INFO L290 TraceCheckUtils]: 40: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,235 INFO L290 TraceCheckUtils]: 39: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,235 INFO L290 TraceCheckUtils]: 38: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,235 INFO L272 TraceCheckUtils]: 37: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,235 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18208#true} {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #86#return; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,235 INFO L290 TraceCheckUtils]: 35: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,236 INFO L290 TraceCheckUtils]: 34: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,236 INFO L290 TraceCheckUtils]: 33: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,236 INFO L272 TraceCheckUtils]: 32: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,236 INFO L290 TraceCheckUtils]: 31: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} assume !!(#t~post7 < 100);havoc #t~post7; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,237 INFO L290 TraceCheckUtils]: 30: Hoare triple {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,237 INFO L290 TraceCheckUtils]: 29: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {18565#(or (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) 0))} is VALID [2022-04-28 12:20:33,238 INFO L290 TraceCheckUtils]: 28: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:20:33,238 INFO L290 TraceCheckUtils]: 27: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:20:33,239 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {18208#true} {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #84#return; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:20:33,239 INFO L290 TraceCheckUtils]: 25: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,239 INFO L290 TraceCheckUtils]: 24: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,239 INFO L290 TraceCheckUtils]: 23: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,239 INFO L272 TraceCheckUtils]: 22: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,240 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {18208#true} {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #82#return; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:20:33,240 INFO L290 TraceCheckUtils]: 20: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,240 INFO L290 TraceCheckUtils]: 19: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,240 INFO L290 TraceCheckUtils]: 18: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,240 INFO L272 TraceCheckUtils]: 17: Hoare triple {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,240 INFO L290 TraceCheckUtils]: 16: Hoare triple {18208#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {18635#(or (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) 0) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 12:20:33,240 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18208#true} {18208#true} #80#return; {18208#true} is VALID [2022-04-28 12:20:33,240 INFO L290 TraceCheckUtils]: 14: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 13: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 12: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L272 TraceCheckUtils]: 11: Hoare triple {18208#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18208#true} {18208#true} #78#return; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 9: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 8: Hoare triple {18208#true} assume !(0 == ~cond); {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 7: Hoare triple {18208#true} ~cond := #in~cond; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L272 TraceCheckUtils]: 6: Hoare triple {18208#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 5: Hoare triple {18208#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L272 TraceCheckUtils]: 4: Hoare triple {18208#true} call #t~ret8 := main(); {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18208#true} {18208#true} #98#return; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 2: Hoare triple {18208#true} assume true; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L290 TraceCheckUtils]: 1: Hoare triple {18208#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; {18208#true} is VALID [2022-04-28 12:20:33,241 INFO L272 TraceCheckUtils]: 0: Hoare triple {18208#true} call ULTIMATE.init(); {18208#true} is VALID [2022-04-28 12:20:33,242 INFO L134 CoverageAnalysis]: Checked inductivity of 162 backedges. 16 proven. 10 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-28 12:20:33,242 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:20:33,242 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [552592030] [2022-04-28 12:20:33,242 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:20:33,242 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [578478144] [2022-04-28 12:20:33,243 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [578478144] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:20:33,243 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:20:33,243 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-28 12:20:33,243 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:20:33,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [46004251] [2022-04-28 12:20:33,243 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [46004251] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:33,243 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:33,243 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:20:33,243 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [463509696] [2022-04-28 12:20:33,243 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:20:33,244 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 84 [2022-04-28 12:20:33,244 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:20:33,244 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:33,294 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:20:33,294 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:20:33,294 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:33,294 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:20:33,295 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:20:33,295 INFO L87 Difference]: Start difference. First operand 206 states and 268 transitions. Second operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:34,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:34,707 INFO L93 Difference]: Finished difference Result 234 states and 311 transitions. [2022-04-28 12:20:34,707 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 12:20:34,707 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) Word has length 84 [2022-04-28 12:20:34,708 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:20:34,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:34,710 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-28 12:20:34,710 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:34,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 114 transitions. [2022-04-28 12:20:34,712 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 114 transitions. [2022-04-28 12:20:34,865 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:34,870 INFO L225 Difference]: With dead ends: 234 [2022-04-28 12:20:34,871 INFO L226 Difference]: Without dead ends: 232 [2022-04-28 12:20:34,871 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 171 GetRequests, 154 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=61, Invalid=245, Unknown=0, NotChecked=0, Total=306 [2022-04-28 12:20:34,871 INFO L413 NwaCegarLoop]: 60 mSDtfsCounter, 25 mSDsluCounter, 247 mSDsCounter, 0 mSdLazyCounter, 313 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 307 SdHoareTripleChecker+Invalid, 334 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 313 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:20:34,872 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 307 Invalid, 334 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 313 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:20:34,872 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 232 states. [2022-04-28 12:20:35,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 232 to 229. [2022-04-28 12:20:35,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:20:35,323 INFO L82 GeneralOperation]: Start isEquivalent. First operand 232 states. Second operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-28 12:20:35,324 INFO L74 IsIncluded]: Start isIncluded. First operand 232 states. Second operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-28 12:20:35,324 INFO L87 Difference]: Start difference. First operand 232 states. Second operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-28 12:20:35,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:35,346 INFO L93 Difference]: Finished difference Result 232 states and 309 transitions. [2022-04-28 12:20:35,346 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 309 transitions. [2022-04-28 12:20:35,347 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:35,347 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:35,347 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) Second operand 232 states. [2022-04-28 12:20:35,348 INFO L87 Difference]: Start difference. First operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) Second operand 232 states. [2022-04-28 12:20:35,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:35,354 INFO L93 Difference]: Finished difference Result 232 states and 309 transitions. [2022-04-28 12:20:35,354 INFO L276 IsEmpty]: Start isEmpty. Operand 232 states and 309 transitions. [2022-04-28 12:20:35,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:35,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:35,355 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:20:35,355 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:20:35,357 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 141 states have (on average 1.24822695035461) internal successors, (176), 148 states have internal predecessors, (176), 66 states have call successors, (66), 22 states have call predecessors, (66), 21 states have return successors, (64), 58 states have call predecessors, (64), 64 states have call successors, (64) [2022-04-28 12:20:35,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 306 transitions. [2022-04-28 12:20:35,364 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 306 transitions. Word has length 84 [2022-04-28 12:20:35,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:20:35,364 INFO L495 AbstractCegarLoop]: Abstraction has 229 states and 306 transitions. [2022-04-28 12:20:35,365 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 3.25) internal successors, (26), 8 states have internal predecessors, (26), 5 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 4 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:20:35,365 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 306 transitions. [2022-04-28 12:20:35,789 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 306 edges. 306 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:35,789 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 306 transitions. [2022-04-28 12:20:35,790 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-28 12:20:35,790 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:20:35,790 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 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] [2022-04-28 12:20:35,815 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:20:35,990 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:20:35,990 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:20:35,991 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:20:35,991 INFO L85 PathProgramCache]: Analyzing trace with hash 1676300815, now seen corresponding path program 3 times [2022-04-28 12:20:35,991 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:35,991 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [643144270] [2022-04-28 12:20:35,991 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:20:35,991 INFO L85 PathProgramCache]: Analyzing trace with hash 1676300815, now seen corresponding path program 4 times [2022-04-28 12:20:35,992 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:20:35,992 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1810078944] [2022-04-28 12:20:35,992 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:20:35,992 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:20:36,004 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:20:36,005 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1725924887] [2022-04-28 12:20:36,005 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:20:36,005 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:20:36,005 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:20:36,006 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:20:36,011 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:20:36,067 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:20:36,067 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:20:36,073 INFO L263 TraceCheckSpWp]: Trace formula consists of 211 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 12:20:36,087 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:20:36,088 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:20:36,298 INFO L272 TraceCheckUtils]: 0: Hoare triple {20123#true} call ULTIMATE.init(); {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L290 TraceCheckUtils]: 1: Hoare triple {20123#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; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L290 TraceCheckUtils]: 2: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20123#true} {20123#true} #98#return; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L272 TraceCheckUtils]: 4: Hoare triple {20123#true} call #t~ret8 := main(); {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L290 TraceCheckUtils]: 5: Hoare triple {20123#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L272 TraceCheckUtils]: 6: Hoare triple {20123#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L290 TraceCheckUtils]: 7: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L290 TraceCheckUtils]: 8: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L290 TraceCheckUtils]: 9: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20123#true} {20123#true} #78#return; {20123#true} is VALID [2022-04-28 12:20:36,298 INFO L272 TraceCheckUtils]: 11: Hoare triple {20123#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 12: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 13: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 14: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {20123#true} {20123#true} #80#return; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 16: Hoare triple {20123#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L272 TraceCheckUtils]: 17: Hoare triple {20123#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 18: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 19: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 20: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {20123#true} {20123#true} #82#return; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L272 TraceCheckUtils]: 22: Hoare triple {20123#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 23: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 24: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,299 INFO L290 TraceCheckUtils]: 25: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {20123#true} {20123#true} #84#return; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 27: Hoare triple {20123#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 28: Hoare triple {20123#true} assume !!(#t~post6 < 100);havoc #t~post6; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 29: Hoare triple {20123#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 30: Hoare triple {20123#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 31: Hoare triple {20123#true} assume !!(#t~post7 < 100);havoc #t~post7; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L272 TraceCheckUtils]: 32: Hoare triple {20123#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 33: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 34: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 35: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {20123#true} {20123#true} #86#return; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L272 TraceCheckUtils]: 37: Hoare triple {20123#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 38: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 39: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,300 INFO L290 TraceCheckUtils]: 40: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {20123#true} {20123#true} #88#return; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L272 TraceCheckUtils]: 42: Hoare triple {20123#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 43: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 44: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 45: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20123#true} {20123#true} #90#return; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L272 TraceCheckUtils]: 47: Hoare triple {20123#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 48: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 49: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 50: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {20123#true} {20123#true} #92#return; {20123#true} is VALID [2022-04-28 12:20:36,301 INFO L290 TraceCheckUtils]: 52: Hoare triple {20123#true} assume !(~c~0 >= ~b~0); {20284#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:20:36,302 INFO L290 TraceCheckUtils]: 53: Hoare triple {20284#(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; {20288#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:20:36,302 INFO L290 TraceCheckUtils]: 54: Hoare triple {20288#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20288#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:20:36,302 INFO L290 TraceCheckUtils]: 55: Hoare triple {20288#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {20288#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:20:36,303 INFO L290 TraceCheckUtils]: 56: Hoare triple {20288#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,303 INFO L290 TraceCheckUtils]: 57: Hoare triple {20298#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,303 INFO L290 TraceCheckUtils]: 58: Hoare triple {20298#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,303 INFO L272 TraceCheckUtils]: 59: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L290 TraceCheckUtils]: 60: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L290 TraceCheckUtils]: 61: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L290 TraceCheckUtils]: 62: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #86#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,304 INFO L272 TraceCheckUtils]: 64: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L290 TraceCheckUtils]: 65: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L290 TraceCheckUtils]: 66: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,304 INFO L290 TraceCheckUtils]: 67: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,305 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #88#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,305 INFO L272 TraceCheckUtils]: 69: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,305 INFO L290 TraceCheckUtils]: 70: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,305 INFO L290 TraceCheckUtils]: 71: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,305 INFO L290 TraceCheckUtils]: 72: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,306 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #90#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,306 INFO L272 TraceCheckUtils]: 74: Hoare triple {20298#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {20123#true} is VALID [2022-04-28 12:20:36,306 INFO L290 TraceCheckUtils]: 75: Hoare triple {20123#true} ~cond := #in~cond; {20123#true} is VALID [2022-04-28 12:20:36,306 INFO L290 TraceCheckUtils]: 76: Hoare triple {20123#true} assume !(0 == ~cond); {20123#true} is VALID [2022-04-28 12:20:36,306 INFO L290 TraceCheckUtils]: 77: Hoare triple {20123#true} assume true; {20123#true} is VALID [2022-04-28 12:20:36,307 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {20123#true} {20298#(< main_~b~0 main_~c~0)} #92#return; {20298#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:20:36,307 INFO L290 TraceCheckUtils]: 79: Hoare triple {20298#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {20124#false} is VALID [2022-04-28 12:20:36,307 INFO L290 TraceCheckUtils]: 80: Hoare triple {20124#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; {20124#false} is VALID [2022-04-28 12:20:36,307 INFO L290 TraceCheckUtils]: 81: Hoare triple {20124#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20124#false} is VALID [2022-04-28 12:20:36,307 INFO L290 TraceCheckUtils]: 82: Hoare triple {20124#false} assume !(#t~post6 < 100);havoc #t~post6; {20124#false} is VALID [2022-04-28 12:20:36,308 INFO L272 TraceCheckUtils]: 83: Hoare triple {20124#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {20124#false} is VALID [2022-04-28 12:20:36,308 INFO L290 TraceCheckUtils]: 84: Hoare triple {20124#false} ~cond := #in~cond; {20124#false} is VALID [2022-04-28 12:20:36,308 INFO L290 TraceCheckUtils]: 85: Hoare triple {20124#false} assume 0 == ~cond; {20124#false} is VALID [2022-04-28 12:20:36,308 INFO L290 TraceCheckUtils]: 86: Hoare triple {20124#false} assume !false; {20124#false} is VALID [2022-04-28 12:20:36,308 INFO L134 CoverageAnalysis]: Checked inductivity of 167 backedges. 31 proven. 0 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-28 12:20:36,308 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 12:20:36,308 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:20:36,308 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1810078944] [2022-04-28 12:20:36,308 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:20:36,308 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1725924887] [2022-04-28 12:20:36,308 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1725924887] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:36,308 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:36,309 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:20:36,309 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:20:36,309 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [643144270] [2022-04-28 12:20:36,309 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [643144270] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:36,309 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:36,309 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 12:20:36,309 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1757201848] [2022-04-28 12:20:36,309 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:20:36,309 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 87 [2022-04-28 12:20:36,310 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:20:36,310 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:20:36,351 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:20:36,351 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 12:20:36,351 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:36,352 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 12:20:36,352 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 12:20:36,352 INFO L87 Difference]: Start difference. First operand 229 states and 306 transitions. Second operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:20:37,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:37,175 INFO L93 Difference]: Finished difference Result 371 states and 532 transitions. [2022-04-28 12:20:37,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 12:20:37,175 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 87 [2022-04-28 12:20:37,175 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:20:37,175 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:20:37,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 110 transitions. [2022-04-28 12:20:37,177 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:20:37,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 110 transitions. [2022-04-28 12:20:37,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 110 transitions. [2022-04-28 12:20:37,289 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:37,297 INFO L225 Difference]: With dead ends: 371 [2022-04-28 12:20:37,298 INFO L226 Difference]: Without dead ends: 291 [2022-04-28 12:20:37,298 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 89 GetRequests, 84 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:20:37,299 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 12 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 172 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:20:37,299 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 172 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:20:37,299 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 291 states. [2022-04-28 12:20:37,836 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 291 to 257. [2022-04-28 12:20:37,836 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:20:37,837 INFO L82 GeneralOperation]: Start isEquivalent. First operand 291 states. Second operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 12:20:37,837 INFO L74 IsIncluded]: Start isIncluded. First operand 291 states. Second operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 12:20:37,837 INFO L87 Difference]: Start difference. First operand 291 states. Second operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 12:20:37,846 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:37,846 INFO L93 Difference]: Finished difference Result 291 states and 403 transitions. [2022-04-28 12:20:37,847 INFO L276 IsEmpty]: Start isEmpty. Operand 291 states and 403 transitions. [2022-04-28 12:20:37,848 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:37,848 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:37,848 INFO L74 IsIncluded]: Start isIncluded. First operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 291 states. [2022-04-28 12:20:37,849 INFO L87 Difference]: Start difference. First operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) Second operand 291 states. [2022-04-28 12:20:37,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:20:37,858 INFO L93 Difference]: Finished difference Result 291 states and 403 transitions. [2022-04-28 12:20:37,858 INFO L276 IsEmpty]: Start isEmpty. Operand 291 states and 403 transitions. [2022-04-28 12:20:37,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:20:37,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:20:37,859 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:20:37,859 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:20:37,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 257 states, 161 states have (on average 1.2546583850931676) internal successors, (202), 168 states have internal predecessors, (202), 74 states have call successors, (74), 22 states have call predecessors, (74), 21 states have return successors, (72), 66 states have call predecessors, (72), 72 states have call successors, (72) [2022-04-28 12:20:37,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 257 states to 257 states and 348 transitions. [2022-04-28 12:20:37,867 INFO L78 Accepts]: Start accepts. Automaton has 257 states and 348 transitions. Word has length 87 [2022-04-28 12:20:37,867 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:20:37,867 INFO L495 AbstractCegarLoop]: Abstraction has 257 states and 348 transitions. [2022-04-28 12:20:37,868 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.8) internal successors, (29), 5 states have internal predecessors, (29), 3 states have call successors, (15), 2 states have call predecessors, (15), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:20:37,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 257 states and 348 transitions. [2022-04-28 12:20:38,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 348 edges. 348 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:20:38,315 INFO L276 IsEmpty]: Start isEmpty. Operand 257 states and 348 transitions. [2022-04-28 12:20:38,315 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-28 12:20:38,315 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:20:38,315 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:20:38,333 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:20:38,516 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:20:38,516 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:20:38,516 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:20:38,516 INFO L85 PathProgramCache]: Analyzing trace with hash -1175887352, now seen corresponding path program 1 times [2022-04-28 12:20:38,516 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:38,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1850372312] [2022-04-28 12:20:38,517 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:20:38,517 INFO L85 PathProgramCache]: Analyzing trace with hash -1175887352, now seen corresponding path program 2 times [2022-04-28 12:20:38,517 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:20:38,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1550982981] [2022-04-28 12:20:38,517 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:20:38,517 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:20:38,533 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:20:38,534 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1978297488] [2022-04-28 12:20:38,534 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:20:38,534 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:20:38,534 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:20:38,535 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:20:38,535 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:20:38,584 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:20:38,584 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:20:38,585 INFO L263 TraceCheckSpWp]: Trace formula consists of 248 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-28 12:20:38,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:20:38,611 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:20:38,847 INFO L272 TraceCheckUtils]: 0: Hoare triple {22231#true} call ULTIMATE.init(); {22231#true} is VALID [2022-04-28 12:20:38,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {22231#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; {22231#true} is VALID [2022-04-28 12:20:38,847 INFO L290 TraceCheckUtils]: 2: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22231#true} {22231#true} #98#return; {22231#true} is VALID [2022-04-28 12:20:38,847 INFO L272 TraceCheckUtils]: 4: Hoare triple {22231#true} call #t~ret8 := main(); {22231#true} is VALID [2022-04-28 12:20:38,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {22231#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L272 TraceCheckUtils]: 6: Hoare triple {22231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 7: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 8: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 9: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22231#true} {22231#true} #78#return; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L272 TraceCheckUtils]: 11: Hoare triple {22231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 12: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 13: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 14: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {22231#true} {22231#true} #80#return; {22231#true} is VALID [2022-04-28 12:20:38,848 INFO L290 TraceCheckUtils]: 16: Hoare triple {22231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,849 INFO L272 TraceCheckUtils]: 17: Hoare triple {22284#(= main_~q~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L290 TraceCheckUtils]: 18: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L290 TraceCheckUtils]: 19: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L290 TraceCheckUtils]: 20: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #82#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,849 INFO L272 TraceCheckUtils]: 22: Hoare triple {22284#(= main_~q~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,849 INFO L290 TraceCheckUtils]: 25: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,850 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #84#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,850 INFO L290 TraceCheckUtils]: 27: Hoare triple {22284#(= main_~q~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,850 INFO L290 TraceCheckUtils]: 28: Hoare triple {22284#(= main_~q~0 0)} assume !!(#t~post6 < 100);havoc #t~post6; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,851 INFO L290 TraceCheckUtils]: 29: Hoare triple {22284#(= main_~q~0 0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,851 INFO L290 TraceCheckUtils]: 30: Hoare triple {22284#(= main_~q~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,851 INFO L290 TraceCheckUtils]: 31: Hoare triple {22284#(= main_~q~0 0)} assume !!(#t~post7 < 100);havoc #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,851 INFO L272 TraceCheckUtils]: 32: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,851 INFO L290 TraceCheckUtils]: 33: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,851 INFO L290 TraceCheckUtils]: 34: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,852 INFO L290 TraceCheckUtils]: 35: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,852 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #86#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,852 INFO L272 TraceCheckUtils]: 37: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,852 INFO L290 TraceCheckUtils]: 38: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,852 INFO L290 TraceCheckUtils]: 39: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,852 INFO L290 TraceCheckUtils]: 40: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,853 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #88#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,853 INFO L272 TraceCheckUtils]: 42: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,853 INFO L290 TraceCheckUtils]: 43: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,853 INFO L290 TraceCheckUtils]: 44: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,853 INFO L290 TraceCheckUtils]: 45: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,854 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #90#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,854 INFO L272 TraceCheckUtils]: 47: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,854 INFO L290 TraceCheckUtils]: 48: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,854 INFO L290 TraceCheckUtils]: 49: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,854 INFO L290 TraceCheckUtils]: 50: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,855 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #92#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,855 INFO L290 TraceCheckUtils]: 52: Hoare triple {22284#(= main_~q~0 0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,855 INFO L290 TraceCheckUtils]: 53: Hoare triple {22284#(= main_~q~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,855 INFO L290 TraceCheckUtils]: 54: Hoare triple {22284#(= main_~q~0 0)} assume !!(#t~post7 < 100);havoc #t~post7; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,855 INFO L272 TraceCheckUtils]: 55: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L290 TraceCheckUtils]: 56: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L290 TraceCheckUtils]: 57: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L290 TraceCheckUtils]: 58: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #86#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,856 INFO L272 TraceCheckUtils]: 60: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L290 TraceCheckUtils]: 61: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L290 TraceCheckUtils]: 62: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,856 INFO L290 TraceCheckUtils]: 63: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,857 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22231#true} {22284#(= main_~q~0 0)} #88#return; {22284#(= main_~q~0 0)} is VALID [2022-04-28 12:20:38,857 INFO L272 TraceCheckUtils]: 65: Hoare triple {22284#(= main_~q~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,857 INFO L290 TraceCheckUtils]: 66: Hoare triple {22231#true} ~cond := #in~cond; {22435#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:38,858 INFO L290 TraceCheckUtils]: 67: Hoare triple {22435#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:38,858 INFO L290 TraceCheckUtils]: 68: Hoare triple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:38,859 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} {22284#(= main_~q~0 0)} #90#return; {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-28 12:20:38,859 INFO L272 TraceCheckUtils]: 70: Hoare triple {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,859 INFO L290 TraceCheckUtils]: 71: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,859 INFO L290 TraceCheckUtils]: 72: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,859 INFO L290 TraceCheckUtils]: 73: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,860 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {22231#true} {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} #92#return; {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-28 12:20:38,863 INFO L290 TraceCheckUtils]: 75: Hoare triple {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} is VALID [2022-04-28 12:20:38,863 INFO L290 TraceCheckUtils]: 76: Hoare triple {22446#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:20:38,864 INFO L290 TraceCheckUtils]: 77: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:20:38,864 INFO L290 TraceCheckUtils]: 78: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post6 < 100);havoc #t~post6; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:20:38,865 INFO L290 TraceCheckUtils]: 79: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(0 != ~b~0); {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:20:38,865 INFO L272 TraceCheckUtils]: 80: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:38,865 INFO L290 TraceCheckUtils]: 81: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:38,865 INFO L290 TraceCheckUtils]: 82: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:38,865 INFO L290 TraceCheckUtils]: 83: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:38,866 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22231#true} {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #94#return; {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:20:38,867 INFO L272 TraceCheckUtils]: 85: Hoare triple {22468#(and (= main_~p~0 0) (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~p~0 * ~x~0 + ~r~0 * ~y~0 == ~a~0 then 1 else 0)); {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:20:38,867 INFO L290 TraceCheckUtils]: 86: Hoare triple {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22500#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:38,868 INFO L290 TraceCheckUtils]: 87: Hoare triple {22500#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22232#false} is VALID [2022-04-28 12:20:38,868 INFO L290 TraceCheckUtils]: 88: Hoare triple {22232#false} assume !false; {22232#false} is VALID [2022-04-28 12:20:38,868 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 37 proven. 10 refuted. 0 times theorem prover too weak. 149 trivial. 0 not checked. [2022-04-28 12:20:38,868 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:20:58,297 INFO L290 TraceCheckUtils]: 88: Hoare triple {22232#false} assume !false; {22232#false} is VALID [2022-04-28 12:20:58,297 INFO L290 TraceCheckUtils]: 87: Hoare triple {22500#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22232#false} is VALID [2022-04-28 12:20:58,298 INFO L290 TraceCheckUtils]: 86: Hoare triple {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22500#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:20:58,298 INFO L272 TraceCheckUtils]: 85: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 + ~r~0 * ~y~0 == ~a~0 then 1 else 0)); {22496#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:20:58,299 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {22231#true} {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #94#return; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:20:58,299 INFO L290 TraceCheckUtils]: 83: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,299 INFO L290 TraceCheckUtils]: 82: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,299 INFO L290 TraceCheckUtils]: 81: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,300 INFO L272 TraceCheckUtils]: 80: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,300 INFO L290 TraceCheckUtils]: 79: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(0 != ~b~0); {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:20:58,300 INFO L290 TraceCheckUtils]: 78: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:20:58,301 INFO L290 TraceCheckUtils]: 77: Hoare triple {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:20:58,301 INFO L290 TraceCheckUtils]: 76: Hoare triple {22544#(= 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; {22516#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:20:58,302 INFO L290 TraceCheckUtils]: 75: Hoare triple {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:20:58,303 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {22231#true} {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:20:58,303 INFO L290 TraceCheckUtils]: 73: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,303 INFO L290 TraceCheckUtils]: 72: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,303 INFO L290 TraceCheckUtils]: 71: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,303 INFO L272 TraceCheckUtils]: 70: Hoare triple {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,304 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} {22231#true} #90#return; {22544#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:20:58,304 INFO L290 TraceCheckUtils]: 68: Hoare triple {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:58,305 INFO L290 TraceCheckUtils]: 67: Hoare triple {22575#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {22439#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:20:58,305 INFO L290 TraceCheckUtils]: 66: Hoare triple {22231#true} ~cond := #in~cond; {22575#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:20:58,305 INFO L272 TraceCheckUtils]: 65: Hoare triple {22231#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,305 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22231#true} {22231#true} #88#return; {22231#true} is VALID [2022-04-28 12:20:58,305 INFO L290 TraceCheckUtils]: 63: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,305 INFO L290 TraceCheckUtils]: 62: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,305 INFO L290 TraceCheckUtils]: 61: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L272 TraceCheckUtils]: 60: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22231#true} {22231#true} #86#return; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 58: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 57: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 56: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L272 TraceCheckUtils]: 55: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 54: Hoare triple {22231#true} assume !!(#t~post7 < 100);havoc #t~post7; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 53: Hoare triple {22231#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 52: Hoare triple {22231#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {22231#true} {22231#true} #92#return; {22231#true} is VALID [2022-04-28 12:20:58,306 INFO L290 TraceCheckUtils]: 50: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 49: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 48: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L272 TraceCheckUtils]: 47: Hoare triple {22231#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22231#true} {22231#true} #90#return; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 45: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 44: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 43: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L272 TraceCheckUtils]: 42: Hoare triple {22231#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22231#true} {22231#true} #88#return; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 40: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,307 INFO L290 TraceCheckUtils]: 39: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 38: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L272 TraceCheckUtils]: 37: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22231#true} {22231#true} #86#return; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 35: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 34: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 33: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L272 TraceCheckUtils]: 32: Hoare triple {22231#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 31: Hoare triple {22231#true} assume !!(#t~post7 < 100);havoc #t~post7; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 30: Hoare triple {22231#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 29: Hoare triple {22231#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 28: Hoare triple {22231#true} assume !!(#t~post6 < 100);havoc #t~post6; {22231#true} is VALID [2022-04-28 12:20:58,308 INFO L290 TraceCheckUtils]: 27: Hoare triple {22231#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {22231#true} {22231#true} #84#return; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 25: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 24: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 23: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L272 TraceCheckUtils]: 22: Hoare triple {22231#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {22231#true} {22231#true} #82#return; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 20: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L272 TraceCheckUtils]: 17: Hoare triple {22231#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 16: Hoare triple {22231#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {22231#true} {22231#true} #80#return; {22231#true} is VALID [2022-04-28 12:20:58,309 INFO L290 TraceCheckUtils]: 14: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 13: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 12: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L272 TraceCheckUtils]: 11: Hoare triple {22231#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22231#true} {22231#true} #78#return; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {22231#true} assume !(0 == ~cond); {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {22231#true} ~cond := #in~cond; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L272 TraceCheckUtils]: 6: Hoare triple {22231#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {22231#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {22231#true} call #t~ret8 := main(); {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22231#true} {22231#true} #98#return; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 2: Hoare triple {22231#true} assume true; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L290 TraceCheckUtils]: 1: Hoare triple {22231#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; {22231#true} is VALID [2022-04-28 12:20:58,310 INFO L272 TraceCheckUtils]: 0: Hoare triple {22231#true} call ULTIMATE.init(); {22231#true} is VALID [2022-04-28 12:20:58,311 INFO L134 CoverageAnalysis]: Checked inductivity of 196 backedges. 40 proven. 7 refuted. 0 times theorem prover too weak. 149 trivial. 0 not checked. [2022-04-28 12:20:58,311 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:20:58,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1550982981] [2022-04-28 12:20:58,311 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:20:58,311 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1978297488] [2022-04-28 12:20:58,311 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1978297488] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:20:58,311 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:20:58,311 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-28 12:20:58,311 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:20:58,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1850372312] [2022-04-28 12:20:58,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1850372312] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:20:58,312 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:20:58,312 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:20:58,312 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [946779030] [2022-04-28 12:20:58,312 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:20:58,312 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 89 [2022-04-28 12:20:58,313 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:20:58,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:20:58,368 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:20:58,369 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:20:58,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:20:58,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:20:58,369 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-28 12:20:58,369 INFO L87 Difference]: Start difference. First operand 257 states and 348 transitions. Second operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:21:00,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:21:00,013 INFO L93 Difference]: Finished difference Result 301 states and 415 transitions. [2022-04-28 12:21:00,013 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 12:21:00,013 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 89 [2022-04-28 12:21:00,014 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:21:00,014 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:21:00,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 89 transitions. [2022-04-28 12:21:00,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:21:00,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 89 transitions. [2022-04-28 12:21:00,016 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 89 transitions. [2022-04-28 12:21:00,112 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:21:00,119 INFO L225 Difference]: With dead ends: 301 [2022-04-28 12:21:00,120 INFO L226 Difference]: Without dead ends: 297 [2022-04-28 12:21:00,120 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 179 GetRequests, 166 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=141, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:21:00,120 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 24 mSDsluCounter, 212 mSDsCounter, 0 mSdLazyCounter, 242 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 259 SdHoareTripleChecker+Invalid, 246 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 242 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 12:21:00,121 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 259 Invalid, 246 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 242 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 12:21:00,121 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 297 states. [2022-04-28 12:21:00,668 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 297 to 293. [2022-04-28 12:21:00,669 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:21:00,669 INFO L82 GeneralOperation]: Start isEquivalent. First operand 297 states. Second operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-28 12:21:00,669 INFO L74 IsIncluded]: Start isIncluded. First operand 297 states. Second operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-28 12:21:00,670 INFO L87 Difference]: Start difference. First operand 297 states. Second operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-28 12:21:00,678 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:21:00,678 INFO L93 Difference]: Finished difference Result 297 states and 408 transitions. [2022-04-28 12:21:00,678 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 408 transitions. [2022-04-28 12:21:00,679 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:21:00,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:21:00,680 INFO L74 IsIncluded]: Start isIncluded. First operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) Second operand 297 states. [2022-04-28 12:21:00,680 INFO L87 Difference]: Start difference. First operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) Second operand 297 states. [2022-04-28 12:21:00,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:21:00,689 INFO L93 Difference]: Finished difference Result 297 states and 408 transitions. [2022-04-28 12:21:00,689 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 408 transitions. [2022-04-28 12:21:00,690 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:21:00,690 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:21:00,690 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:21:00,690 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:21:00,690 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 293 states, 183 states have (on average 1.273224043715847) internal successors, (233), 191 states have internal predecessors, (233), 87 states have call successors, (87), 23 states have call predecessors, (87), 22 states have return successors, (84), 78 states have call predecessors, (84), 84 states have call successors, (84) [2022-04-28 12:21:00,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 293 states to 293 states and 404 transitions. [2022-04-28 12:21:00,700 INFO L78 Accepts]: Start accepts. Automaton has 293 states and 404 transitions. Word has length 89 [2022-04-28 12:21:00,701 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:21:00,701 INFO L495 AbstractCegarLoop]: Abstraction has 293 states and 404 transitions. [2022-04-28 12:21:00,701 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 12:21:00,701 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 293 states and 404 transitions. [2022-04-28 12:21:01,371 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 404 edges. 404 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:21:01,371 INFO L276 IsEmpty]: Start isEmpty. Operand 293 states and 404 transitions. [2022-04-28 12:21:01,372 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 90 [2022-04-28 12:21:01,372 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:21:01,372 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 4, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:21:01,395 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:21:01,573 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:21:01,573 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:21:01,573 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:21:01,573 INFO L85 PathProgramCache]: Analyzing trace with hash -201422586, now seen corresponding path program 1 times [2022-04-28 12:21:01,573 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:21:01,573 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [133625927] [2022-04-28 12:21:01,574 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:21:01,574 INFO L85 PathProgramCache]: Analyzing trace with hash -201422586, now seen corresponding path program 2 times [2022-04-28 12:21:01,574 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:21:01,574 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [678096376] [2022-04-28 12:21:01,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:21:01,574 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:21:01,584 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:21:01,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1315305144] [2022-04-28 12:21:01,584 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:21:01,584 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:21:01,584 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:21:01,585 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:21:01,586 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:21:01,640 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:21:01,640 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:21:01,641 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 12:21:01,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:21:01,663 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:21:01,998 INFO L272 TraceCheckUtils]: 0: Hoare triple {24562#true} call ULTIMATE.init(); {24562#true} is VALID [2022-04-28 12:21:01,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {24562#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; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:01,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:01,999 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24570#(<= ~counter~0 0)} {24562#true} #98#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,000 INFO L272 TraceCheckUtils]: 4: Hoare triple {24570#(<= ~counter~0 0)} call #t~ret8 := main(); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,000 INFO L290 TraceCheckUtils]: 5: Hoare triple {24570#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,000 INFO L272 TraceCheckUtils]: 6: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,001 INFO L290 TraceCheckUtils]: 7: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,001 INFO L290 TraceCheckUtils]: 8: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,001 INFO L290 TraceCheckUtils]: 9: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,002 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #78#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,002 INFO L272 TraceCheckUtils]: 11: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,002 INFO L290 TraceCheckUtils]: 12: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,003 INFO L290 TraceCheckUtils]: 14: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,003 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #80#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,003 INFO L290 TraceCheckUtils]: 16: Hoare triple {24570#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,004 INFO L272 TraceCheckUtils]: 17: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,004 INFO L290 TraceCheckUtils]: 18: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,005 INFO L290 TraceCheckUtils]: 20: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,005 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #82#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,005 INFO L272 TraceCheckUtils]: 22: Hoare triple {24570#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,006 INFO L290 TraceCheckUtils]: 23: Hoare triple {24570#(<= ~counter~0 0)} ~cond := #in~cond; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,007 INFO L290 TraceCheckUtils]: 24: Hoare triple {24570#(<= ~counter~0 0)} assume !(0 == ~cond); {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,007 INFO L290 TraceCheckUtils]: 25: Hoare triple {24570#(<= ~counter~0 0)} assume true; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,007 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24570#(<= ~counter~0 0)} {24570#(<= ~counter~0 0)} #84#return; {24570#(<= ~counter~0 0)} is VALID [2022-04-28 12:21:02,008 INFO L290 TraceCheckUtils]: 27: Hoare triple {24570#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24649#(<= ~counter~0 1)} is VALID [2022-04-28 12:21:02,008 INFO L290 TraceCheckUtils]: 28: Hoare triple {24649#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {24649#(<= ~counter~0 1)} is VALID [2022-04-28 12:21:02,009 INFO L290 TraceCheckUtils]: 29: Hoare triple {24649#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {24649#(<= ~counter~0 1)} is VALID [2022-04-28 12:21:02,009 INFO L290 TraceCheckUtils]: 30: Hoare triple {24649#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,009 INFO L290 TraceCheckUtils]: 31: Hoare triple {24659#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,010 INFO L272 TraceCheckUtils]: 32: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,010 INFO L290 TraceCheckUtils]: 33: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,010 INFO L290 TraceCheckUtils]: 34: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,011 INFO L290 TraceCheckUtils]: 35: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,011 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #86#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,012 INFO L272 TraceCheckUtils]: 37: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,012 INFO L290 TraceCheckUtils]: 39: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,013 INFO L290 TraceCheckUtils]: 40: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,013 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #88#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,014 INFO L272 TraceCheckUtils]: 42: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,014 INFO L290 TraceCheckUtils]: 43: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,014 INFO L290 TraceCheckUtils]: 44: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,014 INFO L290 TraceCheckUtils]: 45: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,015 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #90#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,016 INFO L272 TraceCheckUtils]: 47: Hoare triple {24659#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,016 INFO L290 TraceCheckUtils]: 48: Hoare triple {24659#(<= ~counter~0 2)} ~cond := #in~cond; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,016 INFO L290 TraceCheckUtils]: 49: Hoare triple {24659#(<= ~counter~0 2)} assume !(0 == ~cond); {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,016 INFO L290 TraceCheckUtils]: 50: Hoare triple {24659#(<= ~counter~0 2)} assume true; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,017 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24659#(<= ~counter~0 2)} {24659#(<= ~counter~0 2)} #92#return; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,017 INFO L290 TraceCheckUtils]: 52: Hoare triple {24659#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {24659#(<= ~counter~0 2)} is VALID [2022-04-28 12:21:02,018 INFO L290 TraceCheckUtils]: 53: Hoare triple {24659#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,018 INFO L290 TraceCheckUtils]: 54: Hoare triple {24729#(<= ~counter~0 3)} assume !!(#t~post7 < 100);havoc #t~post7; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,018 INFO L272 TraceCheckUtils]: 55: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,019 INFO L290 TraceCheckUtils]: 56: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,019 INFO L290 TraceCheckUtils]: 57: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,019 INFO L290 TraceCheckUtils]: 58: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,020 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #86#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,020 INFO L272 TraceCheckUtils]: 60: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,021 INFO L290 TraceCheckUtils]: 61: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,021 INFO L290 TraceCheckUtils]: 62: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,021 INFO L290 TraceCheckUtils]: 63: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,022 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #88#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,022 INFO L272 TraceCheckUtils]: 65: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,022 INFO L290 TraceCheckUtils]: 66: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,023 INFO L290 TraceCheckUtils]: 67: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,023 INFO L290 TraceCheckUtils]: 68: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,023 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #90#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,024 INFO L272 TraceCheckUtils]: 70: Hoare triple {24729#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,024 INFO L290 TraceCheckUtils]: 71: Hoare triple {24729#(<= ~counter~0 3)} ~cond := #in~cond; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,025 INFO L290 TraceCheckUtils]: 72: Hoare triple {24729#(<= ~counter~0 3)} assume !(0 == ~cond); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,025 INFO L290 TraceCheckUtils]: 73: Hoare triple {24729#(<= ~counter~0 3)} assume true; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,025 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {24729#(<= ~counter~0 3)} {24729#(<= ~counter~0 3)} #92#return; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,026 INFO L290 TraceCheckUtils]: 75: Hoare triple {24729#(<= ~counter~0 3)} assume !(~c~0 >= ~b~0); {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,026 INFO L290 TraceCheckUtils]: 76: Hoare triple {24729#(<= ~counter~0 3)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24729#(<= ~counter~0 3)} is VALID [2022-04-28 12:21:02,027 INFO L290 TraceCheckUtils]: 77: Hoare triple {24729#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24802#(<= ~counter~0 4)} is VALID [2022-04-28 12:21:02,027 INFO L290 TraceCheckUtils]: 78: Hoare triple {24802#(<= ~counter~0 4)} assume !!(#t~post6 < 100);havoc #t~post6; {24802#(<= ~counter~0 4)} is VALID [2022-04-28 12:21:02,027 INFO L290 TraceCheckUtils]: 79: Hoare triple {24802#(<= ~counter~0 4)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {24802#(<= ~counter~0 4)} is VALID [2022-04-28 12:21:02,028 INFO L290 TraceCheckUtils]: 80: Hoare triple {24802#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24812#(<= |main_#t~post7| 4)} is VALID [2022-04-28 12:21:02,028 INFO L290 TraceCheckUtils]: 81: Hoare triple {24812#(<= |main_#t~post7| 4)} assume !(#t~post7 < 100);havoc #t~post7; {24563#false} is VALID [2022-04-28 12:21:02,028 INFO L290 TraceCheckUtils]: 82: Hoare triple {24563#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; {24563#false} is VALID [2022-04-28 12:21:02,028 INFO L290 TraceCheckUtils]: 83: Hoare triple {24563#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24563#false} is VALID [2022-04-28 12:21:02,028 INFO L290 TraceCheckUtils]: 84: Hoare triple {24563#false} assume !(#t~post6 < 100);havoc #t~post6; {24563#false} is VALID [2022-04-28 12:21:02,028 INFO L272 TraceCheckUtils]: 85: Hoare triple {24563#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {24563#false} is VALID [2022-04-28 12:21:02,028 INFO L290 TraceCheckUtils]: 86: Hoare triple {24563#false} ~cond := #in~cond; {24563#false} is VALID [2022-04-28 12:21:02,029 INFO L290 TraceCheckUtils]: 87: Hoare triple {24563#false} assume 0 == ~cond; {24563#false} is VALID [2022-04-28 12:21:02,029 INFO L290 TraceCheckUtils]: 88: Hoare triple {24563#false} assume !false; {24563#false} is VALID [2022-04-28 12:21:02,029 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 21 proven. 78 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-28 12:21:02,029 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:21:02,376 INFO L290 TraceCheckUtils]: 88: Hoare triple {24563#false} assume !false; {24563#false} is VALID [2022-04-28 12:21:02,376 INFO L290 TraceCheckUtils]: 87: Hoare triple {24563#false} assume 0 == ~cond; {24563#false} is VALID [2022-04-28 12:21:02,376 INFO L290 TraceCheckUtils]: 86: Hoare triple {24563#false} ~cond := #in~cond; {24563#false} is VALID [2022-04-28 12:21:02,377 INFO L272 TraceCheckUtils]: 85: Hoare triple {24563#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {24563#false} is VALID [2022-04-28 12:21:02,377 INFO L290 TraceCheckUtils]: 84: Hoare triple {24563#false} assume !(#t~post6 < 100);havoc #t~post6; {24563#false} is VALID [2022-04-28 12:21:02,377 INFO L290 TraceCheckUtils]: 83: Hoare triple {24563#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24563#false} is VALID [2022-04-28 12:21:02,377 INFO L290 TraceCheckUtils]: 82: Hoare triple {24563#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; {24563#false} is VALID [2022-04-28 12:21:02,377 INFO L290 TraceCheckUtils]: 81: Hoare triple {24858#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {24563#false} is VALID [2022-04-28 12:21:02,377 INFO L290 TraceCheckUtils]: 80: Hoare triple {24862#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24858#(< |main_#t~post7| 100)} is VALID [2022-04-28 12:21:02,378 INFO L290 TraceCheckUtils]: 79: Hoare triple {24862#(< ~counter~0 100)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {24862#(< ~counter~0 100)} is VALID [2022-04-28 12:21:02,378 INFO L290 TraceCheckUtils]: 78: Hoare triple {24862#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {24862#(< ~counter~0 100)} is VALID [2022-04-28 12:21:02,379 INFO L290 TraceCheckUtils]: 77: Hoare triple {24872#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24862#(< ~counter~0 100)} is VALID [2022-04-28 12:21:02,379 INFO L290 TraceCheckUtils]: 76: Hoare triple {24872#(< ~counter~0 99)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,379 INFO L290 TraceCheckUtils]: 75: Hoare triple {24872#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,380 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {24562#true} {24872#(< ~counter~0 99)} #92#return; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,380 INFO L290 TraceCheckUtils]: 73: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,380 INFO L290 TraceCheckUtils]: 72: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,380 INFO L290 TraceCheckUtils]: 71: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,380 INFO L272 TraceCheckUtils]: 70: Hoare triple {24872#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,381 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {24562#true} {24872#(< ~counter~0 99)} #90#return; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,381 INFO L290 TraceCheckUtils]: 68: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,381 INFO L290 TraceCheckUtils]: 67: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,381 INFO L290 TraceCheckUtils]: 66: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,381 INFO L272 TraceCheckUtils]: 65: Hoare triple {24872#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,382 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {24562#true} {24872#(< ~counter~0 99)} #88#return; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,382 INFO L290 TraceCheckUtils]: 63: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,382 INFO L290 TraceCheckUtils]: 62: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,382 INFO L290 TraceCheckUtils]: 61: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,382 INFO L272 TraceCheckUtils]: 60: Hoare triple {24872#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,382 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {24562#true} {24872#(< ~counter~0 99)} #86#return; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,383 INFO L290 TraceCheckUtils]: 58: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,383 INFO L290 TraceCheckUtils]: 57: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,383 INFO L290 TraceCheckUtils]: 56: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,383 INFO L272 TraceCheckUtils]: 55: Hoare triple {24872#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,383 INFO L290 TraceCheckUtils]: 54: Hoare triple {24872#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,384 INFO L290 TraceCheckUtils]: 53: Hoare triple {24945#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24872#(< ~counter~0 99)} is VALID [2022-04-28 12:21:02,384 INFO L290 TraceCheckUtils]: 52: Hoare triple {24945#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,384 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24562#true} {24945#(< ~counter~0 98)} #92#return; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,385 INFO L290 TraceCheckUtils]: 50: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,385 INFO L290 TraceCheckUtils]: 49: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,385 INFO L290 TraceCheckUtils]: 48: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,385 INFO L272 TraceCheckUtils]: 47: Hoare triple {24945#(< ~counter~0 98)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,385 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24562#true} {24945#(< ~counter~0 98)} #90#return; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,385 INFO L290 TraceCheckUtils]: 45: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,385 INFO L290 TraceCheckUtils]: 44: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,386 INFO L290 TraceCheckUtils]: 43: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,386 INFO L272 TraceCheckUtils]: 42: Hoare triple {24945#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,386 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24562#true} {24945#(< ~counter~0 98)} #88#return; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,386 INFO L290 TraceCheckUtils]: 40: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,386 INFO L290 TraceCheckUtils]: 39: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,386 INFO L290 TraceCheckUtils]: 38: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,386 INFO L272 TraceCheckUtils]: 37: Hoare triple {24945#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,387 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24562#true} {24945#(< ~counter~0 98)} #86#return; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,387 INFO L290 TraceCheckUtils]: 35: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,387 INFO L290 TraceCheckUtils]: 34: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,387 INFO L290 TraceCheckUtils]: 33: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,387 INFO L272 TraceCheckUtils]: 32: Hoare triple {24945#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,388 INFO L290 TraceCheckUtils]: 31: Hoare triple {24945#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,388 INFO L290 TraceCheckUtils]: 30: Hoare triple {25015#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24945#(< ~counter~0 98)} is VALID [2022-04-28 12:21:02,388 INFO L290 TraceCheckUtils]: 29: Hoare triple {25015#(< ~counter~0 97)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {25015#(< ~counter~0 97)} is VALID [2022-04-28 12:21:02,389 INFO L290 TraceCheckUtils]: 28: Hoare triple {25015#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {25015#(< ~counter~0 97)} is VALID [2022-04-28 12:21:02,389 INFO L290 TraceCheckUtils]: 27: Hoare triple {25025#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {25015#(< ~counter~0 97)} is VALID [2022-04-28 12:21:02,390 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {24562#true} {25025#(< ~counter~0 96)} #84#return; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,390 INFO L290 TraceCheckUtils]: 25: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,390 INFO L290 TraceCheckUtils]: 24: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,390 INFO L290 TraceCheckUtils]: 23: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,390 INFO L272 TraceCheckUtils]: 22: Hoare triple {25025#(< ~counter~0 96)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,390 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {24562#true} {25025#(< ~counter~0 96)} #82#return; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,390 INFO L290 TraceCheckUtils]: 20: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,390 INFO L290 TraceCheckUtils]: 19: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,390 INFO L290 TraceCheckUtils]: 18: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,391 INFO L272 TraceCheckUtils]: 17: Hoare triple {25025#(< ~counter~0 96)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,391 INFO L290 TraceCheckUtils]: 16: Hoare triple {25025#(< ~counter~0 96)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,391 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24562#true} {25025#(< ~counter~0 96)} #80#return; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,391 INFO L290 TraceCheckUtils]: 12: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,392 INFO L272 TraceCheckUtils]: 11: Hoare triple {25025#(< ~counter~0 96)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,392 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24562#true} {25025#(< ~counter~0 96)} #78#return; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,392 INFO L290 TraceCheckUtils]: 9: Hoare triple {24562#true} assume true; {24562#true} is VALID [2022-04-28 12:21:02,392 INFO L290 TraceCheckUtils]: 8: Hoare triple {24562#true} assume !(0 == ~cond); {24562#true} is VALID [2022-04-28 12:21:02,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {24562#true} ~cond := #in~cond; {24562#true} is VALID [2022-04-28 12:21:02,392 INFO L272 TraceCheckUtils]: 6: Hoare triple {25025#(< ~counter~0 96)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24562#true} is VALID [2022-04-28 12:21:02,392 INFO L290 TraceCheckUtils]: 5: Hoare triple {25025#(< ~counter~0 96)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,393 INFO L272 TraceCheckUtils]: 4: Hoare triple {25025#(< ~counter~0 96)} call #t~ret8 := main(); {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,393 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25025#(< ~counter~0 96)} {24562#true} #98#return; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,393 INFO L290 TraceCheckUtils]: 2: Hoare triple {25025#(< ~counter~0 96)} assume true; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {24562#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; {25025#(< ~counter~0 96)} is VALID [2022-04-28 12:21:02,394 INFO L272 TraceCheckUtils]: 0: Hoare triple {24562#true} call ULTIMATE.init(); {24562#true} is VALID [2022-04-28 12:21:02,394 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 21 proven. 14 refuted. 0 times theorem prover too weak. 136 trivial. 0 not checked. [2022-04-28 12:21:02,394 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:21:02,394 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [678096376] [2022-04-28 12:21:02,394 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:21:02,394 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1315305144] [2022-04-28 12:21:02,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1315305144] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:21:02,395 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:21:02,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 12:21:02,395 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:21:02,395 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [133625927] [2022-04-28 12:21:02,395 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [133625927] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:21:02,395 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:21:02,395 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:21:02,395 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1651952506] [2022-04-28 12:21:02,395 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:21:02,396 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 89 [2022-04-28 12:21:02,396 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:21:02,396 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:21:02,442 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:21:02,442 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:21:02,442 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:21:02,443 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:21:02,443 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:21:02,443 INFO L87 Difference]: Start difference. First operand 293 states and 404 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:21:03,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:21:03,343 INFO L93 Difference]: Finished difference Result 463 states and 647 transitions. [2022-04-28 12:21:03,343 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:21:03,343 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) Word has length 89 [2022-04-28 12:21:03,343 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:21:03,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:21:03,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 133 transitions. [2022-04-28 12:21:03,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:21:03,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 133 transitions. [2022-04-28 12:21:03,347 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 133 transitions. [2022-04-28 12:21:03,459 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:21:03,467 INFO L225 Difference]: With dead ends: 463 [2022-04-28 12:21:03,467 INFO L226 Difference]: Without dead ends: 329 [2022-04-28 12:21:03,468 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=107, Invalid=165, Unknown=0, NotChecked=0, Total=272 [2022-04-28 12:21:03,468 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 46 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 62 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 62 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:21:03,468 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 62 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:21:03,469 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 329 states. [2022-04-28 12:21:04,113 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 329 to 327. [2022-04-28 12:21:04,114 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:21:04,114 INFO L82 GeneralOperation]: Start isEquivalent. First operand 329 states. Second operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:21:04,115 INFO L74 IsIncluded]: Start isIncluded. First operand 329 states. Second operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:21:04,115 INFO L87 Difference]: Start difference. First operand 329 states. Second operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:21:04,124 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:21:04,124 INFO L93 Difference]: Finished difference Result 329 states and 435 transitions. [2022-04-28 12:21:04,124 INFO L276 IsEmpty]: Start isEmpty. Operand 329 states and 435 transitions. [2022-04-28 12:21:04,125 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:21:04,125 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:21:04,126 INFO L74 IsIncluded]: Start isIncluded. First operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 329 states. [2022-04-28 12:21:04,126 INFO L87 Difference]: Start difference. First operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 329 states. [2022-04-28 12:21:04,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:21:04,135 INFO L93 Difference]: Finished difference Result 329 states and 435 transitions. [2022-04-28 12:21:04,135 INFO L276 IsEmpty]: Start isEmpty. Operand 329 states and 435 transitions. [2022-04-28 12:21:04,136 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:21:04,136 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:21:04,136 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:21:04,136 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:21:04,136 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 327 states, 207 states have (on average 1.2367149758454106) internal successors, (256), 214 states have internal predecessors, (256), 90 states have call successors, (90), 30 states have call predecessors, (90), 29 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:21:04,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 327 states to 327 states and 433 transitions. [2022-04-28 12:21:04,146 INFO L78 Accepts]: Start accepts. Automaton has 327 states and 433 transitions. Word has length 89 [2022-04-28 12:21:04,147 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:21:04,147 INFO L495 AbstractCegarLoop]: Abstraction has 327 states and 433 transitions. [2022-04-28 12:21:04,147 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 5 states have call successors, (15), 5 states have call predecessors, (15), 3 states have return successors, (13), 3 states have call predecessors, (13), 4 states have call successors, (13) [2022-04-28 12:21:04,147 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 327 states and 433 transitions. [2022-04-28 12:21:04,845 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 433 edges. 433 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:21:04,845 INFO L276 IsEmpty]: Start isEmpty. Operand 327 states and 433 transitions. [2022-04-28 12:21:04,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 102 [2022-04-28 12:21:04,846 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:21:04,846 INFO L195 NwaCegarLoop]: trace histogram [12, 11, 11, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:21:04,869 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:21:05,046 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:21:05,047 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:21:05,047 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:21:05,047 INFO L85 PathProgramCache]: Analyzing trace with hash 1415088729, now seen corresponding path program 1 times [2022-04-28 12:21:05,047 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:21:05,047 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [112005369] [2022-04-28 12:21:05,047 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:21:05,048 INFO L85 PathProgramCache]: Analyzing trace with hash 1415088729, now seen corresponding path program 2 times [2022-04-28 12:21:05,048 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:21:05,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1187828934] [2022-04-28 12:21:05,048 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:21:05,048 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:21:05,065 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:21:05,065 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1352924023] [2022-04-28 12:21:05,065 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:21:05,065 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:21:05,066 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:21:05,067 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:21:05,068 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:21:05,147 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:21:05,147 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:21:05,149 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 64 conjunts are in the unsatisfiable core [2022-04-28 12:21:05,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:21:05,175 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:21:09,657 INFO L272 TraceCheckUtils]: 0: Hoare triple {27353#true} call ULTIMATE.init(); {27353#true} is VALID [2022-04-28 12:21:09,657 INFO L290 TraceCheckUtils]: 1: Hoare triple {27353#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; {27353#true} is VALID [2022-04-28 12:21:09,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,657 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27353#true} {27353#true} #98#return; {27353#true} is VALID [2022-04-28 12:21:09,657 INFO L272 TraceCheckUtils]: 4: Hoare triple {27353#true} call #t~ret8 := main(); {27353#true} is VALID [2022-04-28 12:21:09,657 INFO L290 TraceCheckUtils]: 5: Hoare triple {27353#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27353#true} is VALID [2022-04-28 12:21:09,657 INFO L272 TraceCheckUtils]: 6: Hoare triple {27353#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,658 INFO L290 TraceCheckUtils]: 7: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,658 INFO L290 TraceCheckUtils]: 8: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,658 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27353#true} {27353#true} #78#return; {27353#true} is VALID [2022-04-28 12:21:09,658 INFO L272 TraceCheckUtils]: 11: Hoare triple {27353#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,658 INFO L290 TraceCheckUtils]: 12: Hoare triple {27353#true} ~cond := #in~cond; {27394#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:21:09,659 INFO L290 TraceCheckUtils]: 13: Hoare triple {27394#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27398#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:21:09,659 INFO L290 TraceCheckUtils]: 14: Hoare triple {27398#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27398#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:21:09,660 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27398#(not (= |assume_abort_if_not_#in~cond| 0))} {27353#true} #80#return; {27405#(<= 1 main_~y~0)} is VALID [2022-04-28 12:21:09,660 INFO L290 TraceCheckUtils]: 16: Hoare triple {27405#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,660 INFO L272 TraceCheckUtils]: 17: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,661 INFO L290 TraceCheckUtils]: 18: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,661 INFO L290 TraceCheckUtils]: 19: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,661 INFO L290 TraceCheckUtils]: 20: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,662 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {27353#true} {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #82#return; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,662 INFO L272 TraceCheckUtils]: 22: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,662 INFO L290 TraceCheckUtils]: 24: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,662 INFO L290 TraceCheckUtils]: 25: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,663 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {27353#true} {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #84#return; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,663 INFO L290 TraceCheckUtils]: 27: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,664 INFO L290 TraceCheckUtils]: 28: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,665 INFO L290 TraceCheckUtils]: 29: Hoare triple {27409#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,665 INFO L290 TraceCheckUtils]: 30: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,666 INFO L290 TraceCheckUtils]: 31: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,666 INFO L272 TraceCheckUtils]: 32: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,666 INFO L290 TraceCheckUtils]: 33: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,666 INFO L290 TraceCheckUtils]: 34: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,666 INFO L290 TraceCheckUtils]: 35: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,667 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {27353#true} {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #86#return; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,667 INFO L272 TraceCheckUtils]: 37: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,667 INFO L290 TraceCheckUtils]: 38: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,667 INFO L290 TraceCheckUtils]: 39: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,667 INFO L290 TraceCheckUtils]: 40: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,668 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {27353#true} {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #88#return; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,669 INFO L272 TraceCheckUtils]: 42: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,669 INFO L290 TraceCheckUtils]: 43: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,669 INFO L290 TraceCheckUtils]: 44: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,669 INFO L290 TraceCheckUtils]: 45: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,670 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {27353#true} {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #90#return; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,670 INFO L272 TraceCheckUtils]: 47: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,670 INFO L290 TraceCheckUtils]: 48: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,670 INFO L290 TraceCheckUtils]: 49: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,670 INFO L290 TraceCheckUtils]: 50: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,671 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {27353#true} {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #92#return; {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,673 INFO L290 TraceCheckUtils]: 52: Hoare triple {27449#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,673 INFO L290 TraceCheckUtils]: 53: Hoare triple {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,674 INFO L290 TraceCheckUtils]: 54: Hoare triple {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 12:21:09,674 INFO L272 TraceCheckUtils]: 55: Hoare triple {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,675 INFO L290 TraceCheckUtils]: 56: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:21:09,675 INFO L290 TraceCheckUtils]: 57: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,675 INFO L290 TraceCheckUtils]: 58: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,677 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27519#(and (= main_~r~0 0) (= main_~s~0 1) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= (+ (- 1) main_~k~0) 0) (<= main_~b~0 main_~a~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0))} #86#return; {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:21:09,678 INFO L272 TraceCheckUtils]: 60: Hoare triple {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,678 INFO L290 TraceCheckUtils]: 61: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,678 INFO L290 TraceCheckUtils]: 62: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,678 INFO L290 TraceCheckUtils]: 63: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,679 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {27353#true} {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:21:09,679 INFO L272 TraceCheckUtils]: 65: Hoare triple {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,679 INFO L290 TraceCheckUtils]: 66: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:21:09,680 INFO L290 TraceCheckUtils]: 67: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,680 INFO L290 TraceCheckUtils]: 68: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,681 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:21:09,681 INFO L272 TraceCheckUtils]: 70: Hoare triple {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,681 INFO L290 TraceCheckUtils]: 71: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:21:09,682 INFO L290 TraceCheckUtils]: 72: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,682 INFO L290 TraceCheckUtils]: 73: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,683 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:21:09,684 INFO L290 TraceCheckUtils]: 75: Hoare triple {27543#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (<= main_~b~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {27592#(and (= main_~r~0 0) (<= main_~y~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (< main_~c~0 main_~y~0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))))} is VALID [2022-04-28 12:21:09,685 INFO L290 TraceCheckUtils]: 76: Hoare triple {27592#(and (= main_~r~0 0) (<= main_~y~0 (+ main_~c~0 (* main_~k~0 main_~y~0))) (< main_~c~0 main_~y~0) (= main_~s~0 1) (= main_~k~0 1) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~x~0 (+ main_~c~0 (* main_~k~0 main_~y~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,686 INFO L290 TraceCheckUtils]: 77: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,686 INFO L290 TraceCheckUtils]: 78: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,687 INFO L290 TraceCheckUtils]: 79: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,687 INFO L290 TraceCheckUtils]: 80: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,688 INFO L290 TraceCheckUtils]: 81: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,688 INFO L272 TraceCheckUtils]: 82: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,688 INFO L290 TraceCheckUtils]: 83: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,688 INFO L290 TraceCheckUtils]: 84: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,688 INFO L290 TraceCheckUtils]: 85: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,689 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {27353#true} {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #86#return; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,689 INFO L272 TraceCheckUtils]: 87: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,689 INFO L290 TraceCheckUtils]: 88: Hoare triple {27353#true} ~cond := #in~cond; {27353#true} is VALID [2022-04-28 12:21:09,690 INFO L290 TraceCheckUtils]: 89: Hoare triple {27353#true} assume !(0 == ~cond); {27353#true} is VALID [2022-04-28 12:21:09,690 INFO L290 TraceCheckUtils]: 90: Hoare triple {27353#true} assume true; {27353#true} is VALID [2022-04-28 12:21:09,690 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {27353#true} {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #88#return; {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,691 INFO L272 TraceCheckUtils]: 92: Hoare triple {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27353#true} is VALID [2022-04-28 12:21:09,691 INFO L290 TraceCheckUtils]: 93: Hoare triple {27353#true} ~cond := #in~cond; {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:21:09,691 INFO L290 TraceCheckUtils]: 94: Hoare triple {27532#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,692 INFO L290 TraceCheckUtils]: 95: Hoare triple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:21:09,693 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {27536#(not (= |__VERIFIER_assert_#in~cond| 0))} {27596#(and (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} #90#return; {27657#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} is VALID [2022-04-28 12:21:09,696 INFO L272 TraceCheckUtils]: 97: Hoare triple {27657#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (< main_~x~0 (* main_~y~0 2)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= (+ main_~s~0 1) 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (<= main_~y~0 main_~x~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {27661#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:21:09,696 INFO L290 TraceCheckUtils]: 98: Hoare triple {27661#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {27665#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:21:09,697 INFO L290 TraceCheckUtils]: 99: Hoare triple {27665#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27354#false} is VALID [2022-04-28 12:21:09,697 INFO L290 TraceCheckUtils]: 100: Hoare triple {27354#false} assume !false; {27354#false} is VALID [2022-04-28 12:21:09,697 INFO L134 CoverageAnalysis]: Checked inductivity of 288 backedges. 84 proven. 53 refuted. 0 times theorem prover too weak. 151 trivial. 0 not checked. [2022-04-28 12:21:09,697 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:21:35,946 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:22:10,812 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:22:10,813 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1187828934] [2022-04-28 12:22:10,813 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:22:10,813 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1352924023] [2022-04-28 12:22:10,813 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1352924023] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 12:22:10,813 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:22:10,813 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-28 12:22:10,813 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:22:10,813 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [112005369] [2022-04-28 12:22:10,813 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [112005369] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:22:10,813 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:22:10,813 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 12:22:10,814 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [898174842] [2022-04-28 12:22:10,814 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:22:10,814 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 101 [2022-04-28 12:22:10,814 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:22:10,814 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:22:10,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:10,912 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 12:22:10,912 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:22:10,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 12:22:10,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=93, Invalid=369, Unknown=0, NotChecked=0, Total=462 [2022-04-28 12:22:10,913 INFO L87 Difference]: Start difference. First operand 327 states and 433 transitions. Second operand has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:22:28,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:28,728 INFO L93 Difference]: Finished difference Result 339 states and 443 transitions. [2022-04-28 12:22:28,728 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 12:22:28,728 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 101 [2022-04-28 12:22:28,728 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:22:28,728 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:22:28,730 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 118 transitions. [2022-04-28 12:22:28,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:22:28,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 118 transitions. [2022-04-28 12:22:28,732 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 118 transitions. [2022-04-28 12:22:28,885 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:28,891 INFO L225 Difference]: With dead ends: 339 [2022-04-28 12:22:28,891 INFO L226 Difference]: Without dead ends: 337 [2022-04-28 12:22:28,891 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 106 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 145 ImplicationChecksByTransitivity, 2.8s TimeCoverageRelationStatistics Valid=122, Invalid=528, Unknown=0, NotChecked=0, Total=650 [2022-04-28 12:22:28,892 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 49 mSDsluCounter, 289 mSDsCounter, 0 mSdLazyCounter, 745 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 337 SdHoareTripleChecker+Invalid, 774 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 745 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:22:28,892 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [66 Valid, 337 Invalid, 774 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 745 Invalid, 0 Unknown, 0 Unchecked, 5.3s Time] [2022-04-28 12:22:28,892 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 337 states. [2022-04-28 12:22:29,474 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 337 to 335. [2022-04-28 12:22:29,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:22:29,475 INFO L82 GeneralOperation]: Start isEquivalent. First operand 337 states. Second operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:29,479 INFO L74 IsIncluded]: Start isIncluded. First operand 337 states. Second operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:29,479 INFO L87 Difference]: Start difference. First operand 337 states. Second operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:29,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:29,488 INFO L93 Difference]: Finished difference Result 337 states and 441 transitions. [2022-04-28 12:22:29,488 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 441 transitions. [2022-04-28 12:22:29,489 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:22:29,489 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:22:29,489 INFO L74 IsIncluded]: Start isIncluded. First operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 337 states. [2022-04-28 12:22:29,490 INFO L87 Difference]: Start difference. First operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 337 states. [2022-04-28 12:22:29,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:29,498 INFO L93 Difference]: Finished difference Result 337 states and 441 transitions. [2022-04-28 12:22:29,499 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 441 transitions. [2022-04-28 12:22:29,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:22:29,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:22:29,500 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:22:29,500 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:22:29,500 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 335 states, 213 states have (on average 1.2300469483568075) internal successors, (262), 220 states have internal predecessors, (262), 90 states have call successors, (90), 32 states have call predecessors, (90), 31 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:29,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 335 states to 335 states and 439 transitions. [2022-04-28 12:22:29,512 INFO L78 Accepts]: Start accepts. Automaton has 335 states and 439 transitions. Word has length 101 [2022-04-28 12:22:29,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:22:29,512 INFO L495 AbstractCegarLoop]: Abstraction has 335 states and 439 transitions. [2022-04-28 12:22:29,512 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 12 states have internal predecessors, (34), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:22:29,512 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 335 states and 439 transitions. [2022-04-28 12:22:30,194 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 439 edges. 439 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:30,194 INFO L276 IsEmpty]: Start isEmpty. Operand 335 states and 439 transitions. [2022-04-28 12:22:30,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2022-04-28 12:22:30,195 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:22:30,195 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:22:30,213 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:22:30,399 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:22:30,399 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:22:30,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:22:30,400 INFO L85 PathProgramCache]: Analyzing trace with hash -1524088572, now seen corresponding path program 5 times [2022-04-28 12:22:30,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:22:30,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1097826789] [2022-04-28 12:22:30,400 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:22:30,400 INFO L85 PathProgramCache]: Analyzing trace with hash -1524088572, now seen corresponding path program 6 times [2022-04-28 12:22:30,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:22:30,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1640709405] [2022-04-28 12:22:30,400 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:22:30,401 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:22:30,417 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:22:30,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1635105266] [2022-04-28 12:22:30,418 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:22:30,418 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:22:30,418 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:22:30,419 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:22:30,423 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:22:30,507 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 12:22:30,507 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:22:30,508 INFO L263 TraceCheckSpWp]: Trace formula consists of 273 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-28 12:22:30,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:22:30,526 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:22:30,789 INFO L272 TraceCheckUtils]: 0: Hoare triple {29788#true} call ULTIMATE.init(); {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 1: Hoare triple {29788#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; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 2: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29788#true} {29788#true} #98#return; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L272 TraceCheckUtils]: 4: Hoare triple {29788#true} call #t~ret8 := main(); {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 5: Hoare triple {29788#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L272 TraceCheckUtils]: 6: Hoare triple {29788#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 7: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 8: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 9: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29788#true} {29788#true} #78#return; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L272 TraceCheckUtils]: 11: Hoare triple {29788#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 12: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {29788#true} {29788#true} #80#return; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 16: Hoare triple {29788#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L272 TraceCheckUtils]: 17: Hoare triple {29788#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 18: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 19: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 20: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {29788#true} {29788#true} #82#return; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L272 TraceCheckUtils]: 22: Hoare triple {29788#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 23: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 24: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 25: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29788#true} {29788#true} #84#return; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 27: Hoare triple {29788#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29788#true} is VALID [2022-04-28 12:22:30,791 INFO L290 TraceCheckUtils]: 28: Hoare triple {29788#true} assume !!(#t~post6 < 100);havoc #t~post6; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 29: Hoare triple {29788#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 30: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 31: Hoare triple {29788#true} assume !!(#t~post7 < 100);havoc #t~post7; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L272 TraceCheckUtils]: 32: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 33: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 34: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 35: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L272 TraceCheckUtils]: 37: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 38: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 39: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 40: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L272 TraceCheckUtils]: 42: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,792 INFO L290 TraceCheckUtils]: 43: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 44: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 45: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L272 TraceCheckUtils]: 47: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 48: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 49: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 50: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 52: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 53: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 54: Hoare triple {29788#true} assume !!(#t~post7 < 100);havoc #t~post7; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L272 TraceCheckUtils]: 55: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 56: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,793 INFO L290 TraceCheckUtils]: 57: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 58: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L272 TraceCheckUtils]: 60: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 61: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 62: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 63: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L272 TraceCheckUtils]: 65: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 66: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 67: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 68: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L272 TraceCheckUtils]: 70: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 71: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,794 INFO L290 TraceCheckUtils]: 72: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L290 TraceCheckUtils]: 73: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L290 TraceCheckUtils]: 75: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L290 TraceCheckUtils]: 76: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L290 TraceCheckUtils]: 77: Hoare triple {29788#true} assume !!(#t~post7 < 100);havoc #t~post7; {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L272 TraceCheckUtils]: 78: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,795 INFO L290 TraceCheckUtils]: 79: Hoare triple {29788#true} ~cond := #in~cond; {30030#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:22:30,795 INFO L290 TraceCheckUtils]: 80: Hoare triple {30030#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:22:30,796 INFO L290 TraceCheckUtils]: 81: Hoare triple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:22:30,796 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} {29788#true} #86#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,796 INFO L272 TraceCheckUtils]: 83: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,797 INFO L290 TraceCheckUtils]: 84: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,797 INFO L290 TraceCheckUtils]: 85: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,797 INFO L290 TraceCheckUtils]: 86: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,797 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #88#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,797 INFO L272 TraceCheckUtils]: 88: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,797 INFO L290 TraceCheckUtils]: 89: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,797 INFO L290 TraceCheckUtils]: 90: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,798 INFO L290 TraceCheckUtils]: 91: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,798 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #90#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,798 INFO L272 TraceCheckUtils]: 93: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:30,798 INFO L290 TraceCheckUtils]: 94: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:30,798 INFO L290 TraceCheckUtils]: 95: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:30,798 INFO L290 TraceCheckUtils]: 96: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:30,799 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #92#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,801 INFO L290 TraceCheckUtils]: 98: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,801 INFO L290 TraceCheckUtils]: 99: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,802 INFO L290 TraceCheckUtils]: 100: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:30,808 INFO L272 TraceCheckUtils]: 101: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:22:30,808 INFO L290 TraceCheckUtils]: 102: Hoare triple {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30103#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:22:30,808 INFO L290 TraceCheckUtils]: 103: Hoare triple {30103#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {29789#false} is VALID [2022-04-28 12:22:30,809 INFO L290 TraceCheckUtils]: 104: Hoare triple {29789#false} assume !false; {29789#false} is VALID [2022-04-28 12:22:30,809 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 64 proven. 10 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-28 12:22:30,809 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:22:38,985 INFO L290 TraceCheckUtils]: 104: Hoare triple {29789#false} assume !false; {29789#false} is VALID [2022-04-28 12:22:38,986 INFO L290 TraceCheckUtils]: 103: Hoare triple {30103#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {29789#false} is VALID [2022-04-28 12:22:38,986 INFO L290 TraceCheckUtils]: 102: Hoare triple {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {30103#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:22:38,986 INFO L272 TraceCheckUtils]: 101: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {30099#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:22:38,987 INFO L290 TraceCheckUtils]: 100: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,987 INFO L290 TraceCheckUtils]: 99: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,991 INFO L290 TraceCheckUtils]: 98: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,992 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #92#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,992 INFO L290 TraceCheckUtils]: 96: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,992 INFO L290 TraceCheckUtils]: 95: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,992 INFO L290 TraceCheckUtils]: 94: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,992 INFO L272 TraceCheckUtils]: 93: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,993 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #90#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,993 INFO L290 TraceCheckUtils]: 91: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,993 INFO L290 TraceCheckUtils]: 90: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,993 INFO L290 TraceCheckUtils]: 89: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,993 INFO L272 TraceCheckUtils]: 88: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,994 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {29788#true} {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} #88#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,994 INFO L290 TraceCheckUtils]: 86: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,994 INFO L290 TraceCheckUtils]: 85: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,994 INFO L290 TraceCheckUtils]: 84: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,994 INFO L272 TraceCheckUtils]: 83: Hoare triple {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,995 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} {29788#true} #86#return; {30041#(= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))} is VALID [2022-04-28 12:22:38,995 INFO L290 TraceCheckUtils]: 81: Hoare triple {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:22:38,995 INFO L290 TraceCheckUtils]: 80: Hoare triple {30185#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {30034#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 79: Hoare triple {29788#true} ~cond := #in~cond; {30185#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:22:38,996 INFO L272 TraceCheckUtils]: 78: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 77: Hoare triple {29788#true} assume !!(#t~post7 < 100);havoc #t~post7; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 76: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 75: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 73: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 72: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 71: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L272 TraceCheckUtils]: 70: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 68: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,996 INFO L290 TraceCheckUtils]: 67: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 66: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L272 TraceCheckUtils]: 65: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 63: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 62: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 61: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L272 TraceCheckUtils]: 60: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 58: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 57: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 56: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L272 TraceCheckUtils]: 55: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 54: Hoare triple {29788#true} assume !!(#t~post7 < 100);havoc #t~post7; {29788#true} is VALID [2022-04-28 12:22:38,997 INFO L290 TraceCheckUtils]: 53: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 52: Hoare triple {29788#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {29788#true} {29788#true} #92#return; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 50: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 49: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 48: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L272 TraceCheckUtils]: 47: Hoare triple {29788#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {29788#true} {29788#true} #90#return; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 45: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 44: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 43: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L272 TraceCheckUtils]: 42: Hoare triple {29788#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {29788#true} {29788#true} #88#return; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 40: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 39: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,998 INFO L290 TraceCheckUtils]: 38: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L272 TraceCheckUtils]: 37: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {29788#true} {29788#true} #86#return; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 35: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 34: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 33: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L272 TraceCheckUtils]: 32: Hoare triple {29788#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 31: Hoare triple {29788#true} assume !!(#t~post7 < 100);havoc #t~post7; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 30: Hoare triple {29788#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 29: Hoare triple {29788#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 28: Hoare triple {29788#true} assume !!(#t~post6 < 100);havoc #t~post6; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 27: Hoare triple {29788#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {29788#true} {29788#true} #84#return; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 25: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:38,999 INFO L290 TraceCheckUtils]: 24: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 23: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L272 TraceCheckUtils]: 22: Hoare triple {29788#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {29788#true} {29788#true} #82#return; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 20: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 19: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 18: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L272 TraceCheckUtils]: 17: Hoare triple {29788#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 16: Hoare triple {29788#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {29788#true} {29788#true} #80#return; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 14: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 13: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L290 TraceCheckUtils]: 12: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L272 TraceCheckUtils]: 11: Hoare triple {29788#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:39,000 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {29788#true} {29788#true} #78#return; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L290 TraceCheckUtils]: 9: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L290 TraceCheckUtils]: 8: Hoare triple {29788#true} assume !(0 == ~cond); {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L290 TraceCheckUtils]: 7: Hoare triple {29788#true} ~cond := #in~cond; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L272 TraceCheckUtils]: 6: Hoare triple {29788#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L290 TraceCheckUtils]: 5: Hoare triple {29788#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L272 TraceCheckUtils]: 4: Hoare triple {29788#true} call #t~ret8 := main(); {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29788#true} {29788#true} #98#return; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {29788#true} assume true; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {29788#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; {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {29788#true} call ULTIMATE.init(); {29788#true} is VALID [2022-04-28 12:22:39,001 INFO L134 CoverageAnalysis]: Checked inductivity of 342 backedges. 64 proven. 10 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-28 12:22:39,002 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:22:39,002 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1640709405] [2022-04-28 12:22:39,002 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:22:39,002 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1635105266] [2022-04-28 12:22:39,002 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1635105266] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:22:39,002 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:22:39,002 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 8 [2022-04-28 12:22:39,002 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:22:39,002 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1097826789] [2022-04-28 12:22:39,002 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1097826789] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:22:39,002 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:22:39,002 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 12:22:39,002 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539407215] [2022-04-28 12:22:39,002 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:22:39,003 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), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 105 [2022-04-28 12:22:39,003 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:22:39,003 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), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:22:39,046 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:22:39,047 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 12:22:39,047 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:22:39,047 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 12:22:39,047 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 12:22:39,047 INFO L87 Difference]: Start difference. First operand 335 states and 439 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:22:39,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:39,925 INFO L93 Difference]: Finished difference Result 341 states and 444 transitions. [2022-04-28 12:22:39,925 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 12:22:39,926 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), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 105 [2022-04-28 12:22:39,926 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:22:39,926 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), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:22:39,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2022-04-28 12:22:39,927 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), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:22:39,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2022-04-28 12:22:39,928 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 50 transitions. [2022-04-28 12:22:39,973 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:39,979 INFO L225 Difference]: With dead ends: 341 [2022-04-28 12:22:39,979 INFO L226 Difference]: Without dead ends: 339 [2022-04-28 12:22:39,980 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 211 GetRequests, 200 SyntacticMatches, 3 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2022-04-28 12:22:39,980 INFO L413 NwaCegarLoop]: 34 mSDtfsCounter, 14 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 140 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:22:39,980 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 140 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:22:39,981 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 339 states. [2022-04-28 12:22:40,670 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 339 to 339. [2022-04-28 12:22:40,670 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:22:40,671 INFO L82 GeneralOperation]: Start isEquivalent. First operand 339 states. Second operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:40,671 INFO L74 IsIncluded]: Start isIncluded. First operand 339 states. Second operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:40,672 INFO L87 Difference]: Start difference. First operand 339 states. Second operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:40,681 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:40,681 INFO L93 Difference]: Finished difference Result 339 states and 442 transitions. [2022-04-28 12:22:40,681 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 442 transitions. [2022-04-28 12:22:40,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:22:40,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:22:40,682 INFO L74 IsIncluded]: Start isIncluded. First operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 339 states. [2022-04-28 12:22:40,683 INFO L87 Difference]: Start difference. First operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 339 states. [2022-04-28 12:22:40,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:40,691 INFO L93 Difference]: Finished difference Result 339 states and 442 transitions. [2022-04-28 12:22:40,691 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 442 transitions. [2022-04-28 12:22:40,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:22:40,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:22:40,692 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:22:40,692 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:22:40,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 339 states, 216 states have (on average 1.2268518518518519) internal successors, (265), 223 states have internal predecessors, (265), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:40,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 339 states to 339 states and 442 transitions. [2022-04-28 12:22:40,703 INFO L78 Accepts]: Start accepts. Automaton has 339 states and 442 transitions. Word has length 105 [2022-04-28 12:22:40,703 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:22:40,703 INFO L495 AbstractCegarLoop]: Abstraction has 339 states and 442 transitions. [2022-04-28 12:22:40,703 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), 2 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-04-28 12:22:40,703 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 339 states and 442 transitions. [2022-04-28 12:22:41,402 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 442 edges. 442 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:41,402 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 442 transitions. [2022-04-28 12:22:41,402 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 107 [2022-04-28 12:22:41,402 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:22:41,402 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:22:41,419 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:22:41,603 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:22:41,603 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:22:41,603 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:22:41,604 INFO L85 PathProgramCache]: Analyzing trace with hash -1026601615, now seen corresponding path program 3 times [2022-04-28 12:22:41,604 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:22:41,604 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [4560902] [2022-04-28 12:22:41,604 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:22:41,604 INFO L85 PathProgramCache]: Analyzing trace with hash -1026601615, now seen corresponding path program 4 times [2022-04-28 12:22:41,604 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:22:41,604 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [586155637] [2022-04-28 12:22:41,604 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:22:41,605 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:22:41,614 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:22:41,614 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1081256660] [2022-04-28 12:22:41,614 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:22:41,614 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:22:41,615 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:22:41,615 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:22:41,616 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:22:41,686 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:22:41,686 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:22:41,687 INFO L263 TraceCheckSpWp]: Trace formula consists of 283 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 12:22:41,705 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:22:41,707 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:22:42,126 INFO L272 TraceCheckUtils]: 0: Hoare triple {32467#true} call ULTIMATE.init(); {32467#true} is VALID [2022-04-28 12:22:42,127 INFO L290 TraceCheckUtils]: 1: Hoare triple {32467#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; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,128 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32475#(<= ~counter~0 0)} {32467#true} #98#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,128 INFO L272 TraceCheckUtils]: 4: Hoare triple {32475#(<= ~counter~0 0)} call #t~ret8 := main(); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,128 INFO L290 TraceCheckUtils]: 5: Hoare triple {32475#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,129 INFO L272 TraceCheckUtils]: 6: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,129 INFO L290 TraceCheckUtils]: 7: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,130 INFO L290 TraceCheckUtils]: 8: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,130 INFO L290 TraceCheckUtils]: 9: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,130 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #78#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,131 INFO L272 TraceCheckUtils]: 11: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,131 INFO L290 TraceCheckUtils]: 12: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,131 INFO L290 TraceCheckUtils]: 13: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,132 INFO L290 TraceCheckUtils]: 14: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,132 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #80#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,132 INFO L290 TraceCheckUtils]: 16: Hoare triple {32475#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,133 INFO L272 TraceCheckUtils]: 17: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,133 INFO L290 TraceCheckUtils]: 18: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,133 INFO L290 TraceCheckUtils]: 19: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,134 INFO L290 TraceCheckUtils]: 20: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,134 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #82#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,135 INFO L272 TraceCheckUtils]: 22: Hoare triple {32475#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,135 INFO L290 TraceCheckUtils]: 23: Hoare triple {32475#(<= ~counter~0 0)} ~cond := #in~cond; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,135 INFO L290 TraceCheckUtils]: 24: Hoare triple {32475#(<= ~counter~0 0)} assume !(0 == ~cond); {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,135 INFO L290 TraceCheckUtils]: 25: Hoare triple {32475#(<= ~counter~0 0)} assume true; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,136 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32475#(<= ~counter~0 0)} {32475#(<= ~counter~0 0)} #84#return; {32475#(<= ~counter~0 0)} is VALID [2022-04-28 12:22:42,137 INFO L290 TraceCheckUtils]: 27: Hoare triple {32475#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32554#(<= ~counter~0 1)} is VALID [2022-04-28 12:22:42,137 INFO L290 TraceCheckUtils]: 28: Hoare triple {32554#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {32554#(<= ~counter~0 1)} is VALID [2022-04-28 12:22:42,138 INFO L290 TraceCheckUtils]: 29: Hoare triple {32554#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {32554#(<= ~counter~0 1)} is VALID [2022-04-28 12:22:42,138 INFO L290 TraceCheckUtils]: 30: Hoare triple {32554#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,139 INFO L290 TraceCheckUtils]: 31: Hoare triple {32564#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,139 INFO L272 TraceCheckUtils]: 32: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,139 INFO L290 TraceCheckUtils]: 33: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,140 INFO L290 TraceCheckUtils]: 34: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,140 INFO L290 TraceCheckUtils]: 35: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,141 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #86#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,141 INFO L272 TraceCheckUtils]: 37: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,141 INFO L290 TraceCheckUtils]: 38: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,142 INFO L290 TraceCheckUtils]: 39: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,142 INFO L290 TraceCheckUtils]: 40: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,143 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #88#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,143 INFO L272 TraceCheckUtils]: 42: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,144 INFO L290 TraceCheckUtils]: 43: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,144 INFO L290 TraceCheckUtils]: 44: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,144 INFO L290 TraceCheckUtils]: 45: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,145 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #90#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,145 INFO L272 TraceCheckUtils]: 47: Hoare triple {32564#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,146 INFO L290 TraceCheckUtils]: 48: Hoare triple {32564#(<= ~counter~0 2)} ~cond := #in~cond; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,146 INFO L290 TraceCheckUtils]: 49: Hoare triple {32564#(<= ~counter~0 2)} assume !(0 == ~cond); {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,146 INFO L290 TraceCheckUtils]: 50: Hoare triple {32564#(<= ~counter~0 2)} assume true; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,147 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {32564#(<= ~counter~0 2)} {32564#(<= ~counter~0 2)} #92#return; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,147 INFO L290 TraceCheckUtils]: 52: Hoare triple {32564#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32564#(<= ~counter~0 2)} is VALID [2022-04-28 12:22:42,148 INFO L290 TraceCheckUtils]: 53: Hoare triple {32564#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,148 INFO L290 TraceCheckUtils]: 54: Hoare triple {32634#(<= ~counter~0 3)} assume !!(#t~post7 < 100);havoc #t~post7; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,149 INFO L272 TraceCheckUtils]: 55: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,149 INFO L290 TraceCheckUtils]: 56: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,150 INFO L290 TraceCheckUtils]: 57: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,150 INFO L290 TraceCheckUtils]: 58: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,150 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #86#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,151 INFO L272 TraceCheckUtils]: 60: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,151 INFO L290 TraceCheckUtils]: 61: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,152 INFO L290 TraceCheckUtils]: 62: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,152 INFO L290 TraceCheckUtils]: 63: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,153 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #88#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,153 INFO L272 TraceCheckUtils]: 65: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,153 INFO L290 TraceCheckUtils]: 66: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,154 INFO L290 TraceCheckUtils]: 67: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,154 INFO L290 TraceCheckUtils]: 68: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,155 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #90#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,155 INFO L272 TraceCheckUtils]: 70: Hoare triple {32634#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,156 INFO L290 TraceCheckUtils]: 71: Hoare triple {32634#(<= ~counter~0 3)} ~cond := #in~cond; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,156 INFO L290 TraceCheckUtils]: 72: Hoare triple {32634#(<= ~counter~0 3)} assume !(0 == ~cond); {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,156 INFO L290 TraceCheckUtils]: 73: Hoare triple {32634#(<= ~counter~0 3)} assume true; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,157 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {32634#(<= ~counter~0 3)} {32634#(<= ~counter~0 3)} #92#return; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,157 INFO L290 TraceCheckUtils]: 75: Hoare triple {32634#(<= ~counter~0 3)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32634#(<= ~counter~0 3)} is VALID [2022-04-28 12:22:42,158 INFO L290 TraceCheckUtils]: 76: Hoare triple {32634#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,158 INFO L290 TraceCheckUtils]: 77: Hoare triple {32704#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,159 INFO L272 TraceCheckUtils]: 78: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,159 INFO L290 TraceCheckUtils]: 79: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,159 INFO L290 TraceCheckUtils]: 80: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,160 INFO L290 TraceCheckUtils]: 81: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,160 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #86#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,161 INFO L272 TraceCheckUtils]: 83: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,161 INFO L290 TraceCheckUtils]: 84: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,162 INFO L290 TraceCheckUtils]: 85: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,162 INFO L290 TraceCheckUtils]: 86: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,162 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #88#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,163 INFO L272 TraceCheckUtils]: 88: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,163 INFO L290 TraceCheckUtils]: 89: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,164 INFO L290 TraceCheckUtils]: 90: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,164 INFO L290 TraceCheckUtils]: 91: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,165 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #90#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,165 INFO L272 TraceCheckUtils]: 93: Hoare triple {32704#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,166 INFO L290 TraceCheckUtils]: 94: Hoare triple {32704#(<= ~counter~0 4)} ~cond := #in~cond; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,166 INFO L290 TraceCheckUtils]: 95: Hoare triple {32704#(<= ~counter~0 4)} assume !(0 == ~cond); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,166 INFO L290 TraceCheckUtils]: 96: Hoare triple {32704#(<= ~counter~0 4)} assume true; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,167 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {32704#(<= ~counter~0 4)} {32704#(<= ~counter~0 4)} #92#return; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,167 INFO L290 TraceCheckUtils]: 98: Hoare triple {32704#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,167 INFO L290 TraceCheckUtils]: 99: Hoare triple {32704#(<= ~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; {32704#(<= ~counter~0 4)} is VALID [2022-04-28 12:22:42,168 INFO L290 TraceCheckUtils]: 100: Hoare triple {32704#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32777#(<= |main_#t~post6| 4)} is VALID [2022-04-28 12:22:42,168 INFO L290 TraceCheckUtils]: 101: Hoare triple {32777#(<= |main_#t~post6| 4)} assume !(#t~post6 < 100);havoc #t~post6; {32468#false} is VALID [2022-04-28 12:22:42,168 INFO L272 TraceCheckUtils]: 102: Hoare triple {32468#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {32468#false} is VALID [2022-04-28 12:22:42,168 INFO L290 TraceCheckUtils]: 103: Hoare triple {32468#false} ~cond := #in~cond; {32468#false} is VALID [2022-04-28 12:22:42,169 INFO L290 TraceCheckUtils]: 104: Hoare triple {32468#false} assume 0 == ~cond; {32468#false} is VALID [2022-04-28 12:22:42,169 INFO L290 TraceCheckUtils]: 105: Hoare triple {32468#false} assume !false; {32468#false} is VALID [2022-04-28 12:22:42,169 INFO L134 CoverageAnalysis]: Checked inductivity of 335 backedges. 24 proven. 215 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-28 12:22:42,169 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:22:42,567 INFO L290 TraceCheckUtils]: 105: Hoare triple {32468#false} assume !false; {32468#false} is VALID [2022-04-28 12:22:42,568 INFO L290 TraceCheckUtils]: 104: Hoare triple {32468#false} assume 0 == ~cond; {32468#false} is VALID [2022-04-28 12:22:42,568 INFO L290 TraceCheckUtils]: 103: Hoare triple {32468#false} ~cond := #in~cond; {32468#false} is VALID [2022-04-28 12:22:42,568 INFO L272 TraceCheckUtils]: 102: Hoare triple {32468#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {32468#false} is VALID [2022-04-28 12:22:42,568 INFO L290 TraceCheckUtils]: 101: Hoare triple {32805#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {32468#false} is VALID [2022-04-28 12:22:42,568 INFO L290 TraceCheckUtils]: 100: Hoare triple {32809#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {32805#(< |main_#t~post6| 100)} is VALID [2022-04-28 12:22:42,569 INFO L290 TraceCheckUtils]: 99: Hoare triple {32809#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,569 INFO L290 TraceCheckUtils]: 98: Hoare triple {32809#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,570 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {32467#true} {32809#(< ~counter~0 100)} #92#return; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,570 INFO L290 TraceCheckUtils]: 96: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,570 INFO L290 TraceCheckUtils]: 95: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,570 INFO L290 TraceCheckUtils]: 94: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,570 INFO L272 TraceCheckUtils]: 93: Hoare triple {32809#(< ~counter~0 100)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,570 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {32467#true} {32809#(< ~counter~0 100)} #90#return; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,571 INFO L290 TraceCheckUtils]: 91: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,571 INFO L290 TraceCheckUtils]: 90: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,571 INFO L290 TraceCheckUtils]: 89: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,571 INFO L272 TraceCheckUtils]: 88: Hoare triple {32809#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,571 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {32467#true} {32809#(< ~counter~0 100)} #88#return; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,571 INFO L290 TraceCheckUtils]: 86: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,571 INFO L290 TraceCheckUtils]: 85: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,572 INFO L290 TraceCheckUtils]: 84: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,572 INFO L272 TraceCheckUtils]: 83: Hoare triple {32809#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,572 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {32467#true} {32809#(< ~counter~0 100)} #86#return; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,572 INFO L290 TraceCheckUtils]: 81: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,572 INFO L290 TraceCheckUtils]: 80: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,572 INFO L290 TraceCheckUtils]: 79: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,572 INFO L272 TraceCheckUtils]: 78: Hoare triple {32809#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,573 INFO L290 TraceCheckUtils]: 77: Hoare triple {32809#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,574 INFO L290 TraceCheckUtils]: 76: Hoare triple {32882#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32809#(< ~counter~0 100)} is VALID [2022-04-28 12:22:42,574 INFO L290 TraceCheckUtils]: 75: Hoare triple {32882#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,574 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {32467#true} {32882#(< ~counter~0 99)} #92#return; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,575 INFO L290 TraceCheckUtils]: 73: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,575 INFO L290 TraceCheckUtils]: 72: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,575 INFO L290 TraceCheckUtils]: 71: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,575 INFO L272 TraceCheckUtils]: 70: Hoare triple {32882#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,575 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {32467#true} {32882#(< ~counter~0 99)} #90#return; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,575 INFO L290 TraceCheckUtils]: 68: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,575 INFO L290 TraceCheckUtils]: 67: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,575 INFO L290 TraceCheckUtils]: 66: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,576 INFO L272 TraceCheckUtils]: 65: Hoare triple {32882#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,576 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {32467#true} {32882#(< ~counter~0 99)} #88#return; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,576 INFO L290 TraceCheckUtils]: 63: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,576 INFO L290 TraceCheckUtils]: 62: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,576 INFO L290 TraceCheckUtils]: 61: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,576 INFO L272 TraceCheckUtils]: 60: Hoare triple {32882#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,579 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {32467#true} {32882#(< ~counter~0 99)} #86#return; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,579 INFO L290 TraceCheckUtils]: 58: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,579 INFO L290 TraceCheckUtils]: 57: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,579 INFO L290 TraceCheckUtils]: 56: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,579 INFO L272 TraceCheckUtils]: 55: Hoare triple {32882#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {32882#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,580 INFO L290 TraceCheckUtils]: 53: Hoare triple {32952#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32882#(< ~counter~0 99)} is VALID [2022-04-28 12:22:42,580 INFO L290 TraceCheckUtils]: 52: Hoare triple {32952#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,581 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {32467#true} {32952#(< ~counter~0 98)} #92#return; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,581 INFO L290 TraceCheckUtils]: 50: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,581 INFO L290 TraceCheckUtils]: 49: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,581 INFO L290 TraceCheckUtils]: 48: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,581 INFO L272 TraceCheckUtils]: 47: Hoare triple {32952#(< ~counter~0 98)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,582 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {32467#true} {32952#(< ~counter~0 98)} #90#return; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,582 INFO L290 TraceCheckUtils]: 45: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,582 INFO L290 TraceCheckUtils]: 44: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,582 INFO L290 TraceCheckUtils]: 43: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,582 INFO L272 TraceCheckUtils]: 42: Hoare triple {32952#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,582 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {32467#true} {32952#(< ~counter~0 98)} #88#return; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,582 INFO L290 TraceCheckUtils]: 40: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,582 INFO L290 TraceCheckUtils]: 39: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,583 INFO L290 TraceCheckUtils]: 38: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,583 INFO L272 TraceCheckUtils]: 37: Hoare triple {32952#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,583 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {32467#true} {32952#(< ~counter~0 98)} #86#return; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,583 INFO L290 TraceCheckUtils]: 35: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,583 INFO L290 TraceCheckUtils]: 34: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,583 INFO L290 TraceCheckUtils]: 33: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,583 INFO L272 TraceCheckUtils]: 32: Hoare triple {32952#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,584 INFO L290 TraceCheckUtils]: 31: Hoare triple {32952#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,584 INFO L290 TraceCheckUtils]: 30: Hoare triple {33022#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {32952#(< ~counter~0 98)} is VALID [2022-04-28 12:22:42,584 INFO L290 TraceCheckUtils]: 29: Hoare triple {33022#(< ~counter~0 97)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {33022#(< ~counter~0 97)} is VALID [2022-04-28 12:22:42,585 INFO L290 TraceCheckUtils]: 28: Hoare triple {33022#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {33022#(< ~counter~0 97)} is VALID [2022-04-28 12:22:42,585 INFO L290 TraceCheckUtils]: 27: Hoare triple {33032#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {33022#(< ~counter~0 97)} is VALID [2022-04-28 12:22:42,586 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {32467#true} {33032#(< ~counter~0 96)} #84#return; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,586 INFO L290 TraceCheckUtils]: 25: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,586 INFO L290 TraceCheckUtils]: 24: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,586 INFO L290 TraceCheckUtils]: 23: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,586 INFO L272 TraceCheckUtils]: 22: Hoare triple {33032#(< ~counter~0 96)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,586 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {32467#true} {33032#(< ~counter~0 96)} #82#return; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,586 INFO L290 TraceCheckUtils]: 20: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,587 INFO L290 TraceCheckUtils]: 19: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,587 INFO L290 TraceCheckUtils]: 18: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,587 INFO L272 TraceCheckUtils]: 17: Hoare triple {33032#(< ~counter~0 96)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,587 INFO L290 TraceCheckUtils]: 16: Hoare triple {33032#(< ~counter~0 96)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,587 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {32467#true} {33032#(< ~counter~0 96)} #80#return; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,587 INFO L290 TraceCheckUtils]: 14: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,587 INFO L290 TraceCheckUtils]: 13: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,588 INFO L290 TraceCheckUtils]: 12: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,588 INFO L272 TraceCheckUtils]: 11: Hoare triple {33032#(< ~counter~0 96)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,588 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32467#true} {33032#(< ~counter~0 96)} #78#return; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,588 INFO L290 TraceCheckUtils]: 9: Hoare triple {32467#true} assume true; {32467#true} is VALID [2022-04-28 12:22:42,588 INFO L290 TraceCheckUtils]: 8: Hoare triple {32467#true} assume !(0 == ~cond); {32467#true} is VALID [2022-04-28 12:22:42,588 INFO L290 TraceCheckUtils]: 7: Hoare triple {32467#true} ~cond := #in~cond; {32467#true} is VALID [2022-04-28 12:22:42,588 INFO L272 TraceCheckUtils]: 6: Hoare triple {33032#(< ~counter~0 96)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {32467#true} is VALID [2022-04-28 12:22:42,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {33032#(< ~counter~0 96)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,589 INFO L272 TraceCheckUtils]: 4: Hoare triple {33032#(< ~counter~0 96)} call #t~ret8 := main(); {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33032#(< ~counter~0 96)} {32467#true} #98#return; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {33032#(< ~counter~0 96)} assume true; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {32467#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; {33032#(< ~counter~0 96)} is VALID [2022-04-28 12:22:42,590 INFO L272 TraceCheckUtils]: 0: Hoare triple {32467#true} call ULTIMATE.init(); {32467#true} is VALID [2022-04-28 12:22:42,590 INFO L134 CoverageAnalysis]: Checked inductivity of 335 backedges. 24 proven. 23 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-28 12:22:42,590 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:22:42,590 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [586155637] [2022-04-28 12:22:42,590 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:22:42,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1081256660] [2022-04-28 12:22:42,591 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1081256660] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:22:42,591 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:22:42,591 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 12:22:42,591 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:22:42,591 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [4560902] [2022-04-28 12:22:42,591 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [4560902] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:22:42,591 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:22:42,591 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 12:22:42,591 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2051633309] [2022-04-28 12:22:42,591 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:22:42,592 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 106 [2022-04-28 12:22:42,592 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:22:42,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:22:42,663 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:22:42,663 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 12:22:42,663 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:22:42,664 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 12:22:42,664 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:22:42,664 INFO L87 Difference]: Start difference. First operand 339 states and 442 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:22:43,517 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:43,517 INFO L93 Difference]: Finished difference Result 349 states and 452 transitions. [2022-04-28 12:22:43,517 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:22:43,518 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 106 [2022-04-28 12:22:43,518 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:22:43,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:22:43,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 112 transitions. [2022-04-28 12:22:43,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:22:43,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 112 transitions. [2022-04-28 12:22:43,521 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 112 transitions. [2022-04-28 12:22:43,614 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:43,623 INFO L225 Difference]: With dead ends: 349 [2022-04-28 12:22:43,623 INFO L226 Difference]: Without dead ends: 342 [2022-04-28 12:22:43,623 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 214 GetRequests, 199 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=108, Invalid=164, Unknown=0, NotChecked=0, Total=272 [2022-04-28 12:22:43,624 INFO L413 NwaCegarLoop]: 54 mSDtfsCounter, 22 mSDsluCounter, 135 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 189 SdHoareTripleChecker+Invalid, 84 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:22:43,624 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 189 Invalid, 84 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:22:43,625 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 342 states. [2022-04-28 12:22:44,320 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 342 to 342. [2022-04-28 12:22:44,320 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:22:44,321 INFO L82 GeneralOperation]: Start isEquivalent. First operand 342 states. Second operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:44,321 INFO L74 IsIncluded]: Start isIncluded. First operand 342 states. Second operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:44,322 INFO L87 Difference]: Start difference. First operand 342 states. Second operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:44,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:44,329 INFO L93 Difference]: Finished difference Result 342 states and 445 transitions. [2022-04-28 12:22:44,330 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 445 transitions. [2022-04-28 12:22:44,330 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:22:44,330 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:22:44,331 INFO L74 IsIncluded]: Start isIncluded. First operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 342 states. [2022-04-28 12:22:44,331 INFO L87 Difference]: Start difference. First operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) Second operand 342 states. [2022-04-28 12:22:44,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:22:44,339 INFO L93 Difference]: Finished difference Result 342 states and 445 transitions. [2022-04-28 12:22:44,339 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 445 transitions. [2022-04-28 12:22:44,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:22:44,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:22:44,340 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:22:44,341 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:22:44,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 342 states, 219 states have (on average 1.2237442922374429) internal successors, (268), 226 states have internal predecessors, (268), 90 states have call successors, (90), 33 states have call predecessors, (90), 32 states have return successors, (87), 82 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 12:22:44,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 342 states to 342 states and 445 transitions. [2022-04-28 12:22:44,351 INFO L78 Accepts]: Start accepts. Automaton has 342 states and 445 transitions. Word has length 106 [2022-04-28 12:22:44,351 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:22:44,351 INFO L495 AbstractCegarLoop]: Abstraction has 342 states and 445 transitions. [2022-04-28 12:22:44,352 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 7 states have internal predecessors, (34), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:22:44,352 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 342 states and 445 transitions. [2022-04-28 12:22:45,125 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 445 edges. 445 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:22:45,126 INFO L276 IsEmpty]: Start isEmpty. Operand 342 states and 445 transitions. [2022-04-28 12:22:45,126 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 108 [2022-04-28 12:22:45,126 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:22:45,127 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:22:45,151 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:22:45,327 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:22:45,327 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:22:45,327 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:22:45,328 INFO L85 PathProgramCache]: Analyzing trace with hash -1761848073, now seen corresponding path program 3 times [2022-04-28 12:22:45,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:22:45,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2011942240] [2022-04-28 12:22:45,328 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:22:45,328 INFO L85 PathProgramCache]: Analyzing trace with hash -1761848073, now seen corresponding path program 4 times [2022-04-28 12:22:45,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:22:45,339 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [63537352] [2022-04-28 12:22:45,339 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:22:45,339 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:22:45,354 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:22:45,355 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [228889119] [2022-04-28 12:22:45,355 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:22:45,355 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:22:45,355 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:22:45,356 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:22:45,380 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:22:45,425 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:22:45,425 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:22:45,426 INFO L263 TraceCheckSpWp]: Trace formula consists of 239 conjuncts, 44 conjunts are in the unsatisfiable core [2022-04-28 12:22:45,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:22:45,450 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:22:47,734 INFO L272 TraceCheckUtils]: 0: Hoare triple {35188#true} call ULTIMATE.init(); {35188#true} is VALID [2022-04-28 12:22:47,734 INFO L290 TraceCheckUtils]: 1: Hoare triple {35188#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; {35188#true} is VALID [2022-04-28 12:22:47,734 INFO L290 TraceCheckUtils]: 2: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35188#true} {35188#true} #98#return; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L272 TraceCheckUtils]: 4: Hoare triple {35188#true} call #t~ret8 := main(); {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {35188#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L272 TraceCheckUtils]: 6: Hoare triple {35188#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 7: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 8: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 9: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35188#true} {35188#true} #78#return; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L272 TraceCheckUtils]: 11: Hoare triple {35188#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 12: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 13: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L290 TraceCheckUtils]: 14: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,735 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35188#true} {35188#true} #80#return; {35188#true} is VALID [2022-04-28 12:22:47,744 INFO L290 TraceCheckUtils]: 16: Hoare triple {35188#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {35241#(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:22:47,745 INFO L272 TraceCheckUtils]: 17: Hoare triple {35241#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,745 INFO L290 TraceCheckUtils]: 18: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,745 INFO L290 TraceCheckUtils]: 19: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,745 INFO L290 TraceCheckUtils]: 20: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,746 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {35188#true} {35241#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {35241#(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:22:47,746 INFO L272 TraceCheckUtils]: 22: Hoare triple {35241#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,746 INFO L290 TraceCheckUtils]: 23: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,746 INFO L290 TraceCheckUtils]: 24: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,746 INFO L290 TraceCheckUtils]: 25: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,747 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {35188#true} {35241#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {35241#(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:22:47,748 INFO L290 TraceCheckUtils]: 27: Hoare triple {35241#(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; {35241#(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:22:47,748 INFO L290 TraceCheckUtils]: 28: Hoare triple {35241#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {35241#(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:22:47,749 INFO L290 TraceCheckUtils]: 29: Hoare triple {35241#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {35281#(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:22:47,749 INFO L290 TraceCheckUtils]: 30: Hoare triple {35281#(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; {35281#(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:22:47,750 INFO L290 TraceCheckUtils]: 31: Hoare triple {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {35281#(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:22:47,750 INFO L272 TraceCheckUtils]: 32: Hoare triple {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,750 INFO L290 TraceCheckUtils]: 33: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,750 INFO L290 TraceCheckUtils]: 34: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,750 INFO L290 TraceCheckUtils]: 35: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,751 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {35188#true} {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {35281#(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:22:47,751 INFO L272 TraceCheckUtils]: 37: Hoare triple {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,751 INFO L290 TraceCheckUtils]: 38: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,751 INFO L290 TraceCheckUtils]: 39: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,751 INFO L290 TraceCheckUtils]: 40: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,752 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {35188#true} {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {35281#(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:22:47,752 INFO L272 TraceCheckUtils]: 42: Hoare triple {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,752 INFO L290 TraceCheckUtils]: 43: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,752 INFO L290 TraceCheckUtils]: 44: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,753 INFO L290 TraceCheckUtils]: 45: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,753 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {35188#true} {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #90#return; {35281#(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:22:47,754 INFO L272 TraceCheckUtils]: 47: Hoare triple {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,754 INFO L290 TraceCheckUtils]: 48: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,754 INFO L290 TraceCheckUtils]: 49: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,754 INFO L290 TraceCheckUtils]: 50: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,755 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {35188#true} {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #92#return; {35281#(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:22:47,756 INFO L290 TraceCheckUtils]: 52: Hoare triple {35281#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,757 INFO L290 TraceCheckUtils]: 53: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,757 INFO L290 TraceCheckUtils]: 54: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,758 INFO L272 TraceCheckUtils]: 55: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~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)); {35188#true} is VALID [2022-04-28 12:22:47,758 INFO L290 TraceCheckUtils]: 56: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,758 INFO L290 TraceCheckUtils]: 57: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,758 INFO L290 TraceCheckUtils]: 58: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,759 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,759 INFO L272 TraceCheckUtils]: 60: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~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)); {35188#true} is VALID [2022-04-28 12:22:47,759 INFO L290 TraceCheckUtils]: 61: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,759 INFO L290 TraceCheckUtils]: 62: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,759 INFO L290 TraceCheckUtils]: 63: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,760 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,760 INFO L272 TraceCheckUtils]: 65: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~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)); {35188#true} is VALID [2022-04-28 12:22:47,760 INFO L290 TraceCheckUtils]: 66: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,760 INFO L290 TraceCheckUtils]: 67: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,760 INFO L290 TraceCheckUtils]: 68: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,761 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #90#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,762 INFO L272 TraceCheckUtils]: 70: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,762 INFO L290 TraceCheckUtils]: 71: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,762 INFO L290 TraceCheckUtils]: 72: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,762 INFO L290 TraceCheckUtils]: 73: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,763 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {35188#true} {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #92#return; {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,764 INFO L290 TraceCheckUtils]: 75: Hoare triple {35351#(and (= main_~r~0 0) (<= 1 main_~k~0) (= main_~s~0 1) (= main_~a~0 (+ main_~c~0 main_~b~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,765 INFO L290 TraceCheckUtils]: 76: Hoare triple {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,766 INFO L290 TraceCheckUtils]: 77: Hoare triple {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,766 INFO L272 TraceCheckUtils]: 78: Hoare triple {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,766 INFO L290 TraceCheckUtils]: 79: Hoare triple {35188#true} ~cond := #in~cond; {35434#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:22:47,767 INFO L290 TraceCheckUtils]: 80: Hoare triple {35434#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:22:47,767 INFO L290 TraceCheckUtils]: 81: Hoare triple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:22:47,769 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} {35421#(and (= main_~r~0 0) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~b~0 main_~y~0) (= (+ (* (- 2) main_~b~0) main_~a~0) main_~c~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (<= (* main_~b~0 2) main_~a~0) (= main_~p~0 1))} #86#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,769 INFO L272 TraceCheckUtils]: 83: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,769 INFO L290 TraceCheckUtils]: 84: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,769 INFO L290 TraceCheckUtils]: 85: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,769 INFO L290 TraceCheckUtils]: 86: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,770 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {35188#true} {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #88#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,771 INFO L272 TraceCheckUtils]: 88: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,771 INFO L290 TraceCheckUtils]: 89: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,771 INFO L290 TraceCheckUtils]: 90: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,771 INFO L290 TraceCheckUtils]: 91: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,772 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {35188#true} {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #90#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,772 INFO L272 TraceCheckUtils]: 93: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:22:47,772 INFO L290 TraceCheckUtils]: 94: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:22:47,772 INFO L290 TraceCheckUtils]: 95: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:22:47,772 INFO L290 TraceCheckUtils]: 96: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:22:47,773 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {35188#true} {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #92#return; {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,774 INFO L290 TraceCheckUtils]: 98: Hoare triple {35445#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (<= 2 main_~k~0) (= main_~c~0 (+ (* (- 2) main_~b~0) main_~c~0 (* main_~b~0 main_~k~0))) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {35494#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (< main_~c~0 main_~b~0) (= main_~p~0 1))} is VALID [2022-04-28 12:22:47,777 INFO L290 TraceCheckUtils]: 99: Hoare triple {35494#(and (= main_~r~0 0) (<= (* main_~b~0 2) (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (* main_~b~0 main_~k~0) (* main_~b~0 2)) (= main_~q~0 0) (< main_~c~0 main_~b~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; {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-28 12:22:47,778 INFO L290 TraceCheckUtils]: 100: Hoare triple {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-28 12:22:47,778 INFO L290 TraceCheckUtils]: 101: Hoare triple {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} is VALID [2022-04-28 12:22:47,779 INFO L290 TraceCheckUtils]: 102: Hoare triple {35498#(and (<= (* main_~y~0 2) main_~x~0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~b~0) (= (* main_~y~0 (* (- 1) main_~s~0)) (* main_~y~0 2)) (= main_~q~0 1))} assume !(0 != ~b~0); {35508#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) 0) (= (+ (* main_~y~0 2) (* main_~y~0 main_~s~0)) 0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 12:22:47,780 INFO L272 TraceCheckUtils]: 103: Hoare triple {35508#(and (= (+ main_~x~0 (* main_~y~0 main_~s~0)) 0) (= (+ (* main_~y~0 2) (* main_~y~0 main_~s~0)) 0) (< (+ main_~x~0 (* main_~y~0 main_~s~0)) main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:22:47,780 INFO L290 TraceCheckUtils]: 104: Hoare triple {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {35516#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:22:47,781 INFO L290 TraceCheckUtils]: 105: Hoare triple {35516#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {35189#false} is VALID [2022-04-28 12:22:47,781 INFO L290 TraceCheckUtils]: 106: Hoare triple {35189#false} assume !false; {35189#false} is VALID [2022-04-28 12:22:47,782 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 47 proven. 34 refuted. 0 times theorem prover too weak. 255 trivial. 0 not checked. [2022-04-28 12:22:47,782 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:24:13,298 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:24:16,808 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:24:19,283 INFO L290 TraceCheckUtils]: 106: Hoare triple {35189#false} assume !false; {35189#false} is VALID [2022-04-28 12:24:19,283 INFO L290 TraceCheckUtils]: 105: Hoare triple {35516#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {35189#false} is VALID [2022-04-28 12:24:19,284 INFO L290 TraceCheckUtils]: 104: Hoare triple {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {35516#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:24:19,284 INFO L272 TraceCheckUtils]: 103: Hoare triple {35532#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {35512#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:24:19,285 INFO L290 TraceCheckUtils]: 102: Hoare triple {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !(0 != ~b~0); {35532#(= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0)} is VALID [2022-04-28 12:24:19,285 INFO L290 TraceCheckUtils]: 101: Hoare triple {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 12:24:19,285 INFO L290 TraceCheckUtils]: 100: Hoare triple {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 12:24:20,328 INFO L290 TraceCheckUtils]: 99: Hoare triple {35546#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* 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; {35536#(or (not (= main_~b~0 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) 0))} is VALID [2022-04-28 12:24:20,329 INFO L290 TraceCheckUtils]: 98: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} assume !(~c~0 >= ~b~0); {35546#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:20,330 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {35188#true} {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #92#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:24:20,330 INFO L290 TraceCheckUtils]: 96: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,330 INFO L290 TraceCheckUtils]: 95: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,330 INFO L290 TraceCheckUtils]: 94: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,330 INFO L272 TraceCheckUtils]: 93: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:20,332 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {35188#true} {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #90#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:24:20,332 INFO L290 TraceCheckUtils]: 91: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,332 INFO L290 TraceCheckUtils]: 90: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,332 INFO L290 TraceCheckUtils]: 89: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,332 INFO L272 TraceCheckUtils]: 88: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:20,333 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {35188#true} {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} #88#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:24:20,333 INFO L290 TraceCheckUtils]: 86: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,333 INFO L290 TraceCheckUtils]: 85: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,333 INFO L290 TraceCheckUtils]: 84: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,333 INFO L272 TraceCheckUtils]: 83: Hoare triple {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:20,334 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #86#return; {35550#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:24:20,334 INFO L290 TraceCheckUtils]: 81: Hoare triple {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:24:20,335 INFO L290 TraceCheckUtils]: 80: Hoare triple {35609#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {35438#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:24:20,335 INFO L290 TraceCheckUtils]: 79: Hoare triple {35188#true} ~cond := #in~cond; {35609#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:24:20,335 INFO L272 TraceCheckUtils]: 78: Hoare triple {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:20,335 INFO L290 TraceCheckUtils]: 77: Hoare triple {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} assume !!(#t~post7 < 100);havoc #t~post7; {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 12:24:20,336 INFO L290 TraceCheckUtils]: 76: Hoare triple {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 12:24:20,367 INFO L290 TraceCheckUtils]: 75: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35599#(or (not (= main_~c~0 0)) (= (+ (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= main_~b~0 main_~c~0) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))))} is VALID [2022-04-28 12:24:20,368 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #92#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:20,369 INFO L290 TraceCheckUtils]: 73: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,369 INFO L290 TraceCheckUtils]: 72: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,369 INFO L290 TraceCheckUtils]: 71: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,369 INFO L272 TraceCheckUtils]: 70: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:20,369 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #90#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:20,370 INFO L290 TraceCheckUtils]: 68: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,370 INFO L290 TraceCheckUtils]: 67: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,370 INFO L290 TraceCheckUtils]: 66: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,370 INFO L272 TraceCheckUtils]: 65: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~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)); {35188#true} is VALID [2022-04-28 12:24:20,370 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #88#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:20,371 INFO L290 TraceCheckUtils]: 63: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,371 INFO L290 TraceCheckUtils]: 62: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,371 INFO L290 TraceCheckUtils]: 61: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,371 INFO L272 TraceCheckUtils]: 60: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~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)); {35188#true} is VALID [2022-04-28 12:24:20,372 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {35188#true} {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #86#return; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:20,372 INFO L290 TraceCheckUtils]: 58: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:20,372 INFO L290 TraceCheckUtils]: 57: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:20,372 INFO L290 TraceCheckUtils]: 56: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:20,372 INFO L272 TraceCheckUtils]: 55: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~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)); {35188#true} is VALID [2022-04-28 12:24:20,372 INFO L290 TraceCheckUtils]: 54: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:20,373 INFO L290 TraceCheckUtils]: 53: Hoare triple {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:22,376 WARN L290 TraceCheckUtils]: 52: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {35622#(or (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~b~0) main_~a~0) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) main_~a~0)) (< (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0) (+ main_~k~0 1)) (not (<= main_~b~0 main_~c~0)) (= (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~b~0 main_~a~0) main_~b~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is UNKNOWN [2022-04-28 12:24:22,377 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #92#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,377 INFO L290 TraceCheckUtils]: 50: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,377 INFO L290 TraceCheckUtils]: 49: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,377 INFO L290 TraceCheckUtils]: 48: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,377 INFO L272 TraceCheckUtils]: 47: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,378 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #90#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,378 INFO L290 TraceCheckUtils]: 45: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,378 INFO L290 TraceCheckUtils]: 44: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,378 INFO L290 TraceCheckUtils]: 43: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,378 INFO L272 TraceCheckUtils]: 42: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,379 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #88#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,379 INFO L290 TraceCheckUtils]: 40: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,379 INFO L290 TraceCheckUtils]: 39: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,379 INFO L290 TraceCheckUtils]: 38: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,379 INFO L272 TraceCheckUtils]: 37: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,380 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {35188#true} {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #86#return; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,380 INFO L290 TraceCheckUtils]: 35: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,380 INFO L290 TraceCheckUtils]: 34: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,380 INFO L290 TraceCheckUtils]: 33: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,380 INFO L272 TraceCheckUtils]: 32: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,381 INFO L290 TraceCheckUtils]: 31: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,381 INFO L290 TraceCheckUtils]: 30: Hoare triple {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,382 INFO L290 TraceCheckUtils]: 29: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {35692#(or (not (<= (* main_~b~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) (* main_~y~0 main_~s~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)))) (<= (+ (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~b~0) main_~a~0) (< (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0) (+ main_~k~0 2)) (not (= (* main_~b~0 (div (+ (* (- 1) main_~c~0) main_~a~0 (* main_~b~0 2)) main_~b~0)) main_~a~0)))} is VALID [2022-04-28 12:24:22,382 INFO L290 TraceCheckUtils]: 28: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post6 < 100);havoc #t~post6; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:22,383 INFO L290 TraceCheckUtils]: 27: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:22,384 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {35188#true} {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #84#return; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:22,384 INFO L290 TraceCheckUtils]: 25: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,384 INFO L290 TraceCheckUtils]: 24: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,384 INFO L272 TraceCheckUtils]: 22: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,385 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {35188#true} {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #82#return; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:22,385 INFO L290 TraceCheckUtils]: 20: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,385 INFO L290 TraceCheckUtils]: 19: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,385 INFO L290 TraceCheckUtils]: 18: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,385 INFO L272 TraceCheckUtils]: 17: Hoare triple {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,385 INFO L290 TraceCheckUtils]: 16: Hoare triple {35188#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {35762#(or (<= (+ (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~b~0) main_~a~0) (not (= (* (div (* main_~b~0 2) main_~b~0) main_~b~0) main_~a~0)) (= (+ (* (div (* main_~b~0 2) main_~b~0) main_~y~0 main_~s~0) (* (div (* main_~b~0 2) main_~b~0) main_~q~0 main_~x~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 12:24:22,386 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {35188#true} {35188#true} #80#return; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 13: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 12: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L272 TraceCheckUtils]: 11: Hoare triple {35188#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {35188#true} {35188#true} #78#return; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 9: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {35188#true} assume !(0 == ~cond); {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 7: Hoare triple {35188#true} ~cond := #in~cond; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L272 TraceCheckUtils]: 6: Hoare triple {35188#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 5: Hoare triple {35188#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L272 TraceCheckUtils]: 4: Hoare triple {35188#true} call #t~ret8 := main(); {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35188#true} {35188#true} #98#return; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 2: Hoare triple {35188#true} assume true; {35188#true} is VALID [2022-04-28 12:24:22,386 INFO L290 TraceCheckUtils]: 1: Hoare triple {35188#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; {35188#true} is VALID [2022-04-28 12:24:22,387 INFO L272 TraceCheckUtils]: 0: Hoare triple {35188#true} call ULTIMATE.init(); {35188#true} is VALID [2022-04-28 12:24:22,387 INFO L134 CoverageAnalysis]: Checked inductivity of 336 backedges. 47 proven. 34 refuted. 0 times theorem prover too weak. 255 trivial. 0 not checked. [2022-04-28 12:24:22,387 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:24:22,387 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [63537352] [2022-04-28 12:24:22,387 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:24:22,387 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [228889119] [2022-04-28 12:24:22,387 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [228889119] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:24:22,388 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:24:22,388 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 23 [2022-04-28 12:24:22,388 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:24:22,388 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2011942240] [2022-04-28 12:24:22,388 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2011942240] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:24:22,388 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:24:22,388 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 12:24:22,388 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2080704388] [2022-04-28 12:24:22,388 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:24:22,389 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) Word has length 107 [2022-04-28 12:24:22,389 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:24:22,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-28 12:24:22,461 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:22,462 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 12:24:22,462 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:22,462 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 12:24:22,462 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=416, Unknown=0, NotChecked=0, Total=506 [2022-04-28 12:24:22,462 INFO L87 Difference]: Start difference. First operand 342 states and 445 transitions. Second operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-28 12:24:29,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:29,060 INFO L93 Difference]: Finished difference Result 369 states and 485 transitions. [2022-04-28 12:24:29,060 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 12:24:29,060 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) Word has length 107 [2022-04-28 12:24:29,060 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:24:29,061 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-28 12:24:29,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-28 12:24:29,062 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-28 12:24:29,063 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 125 transitions. [2022-04-28 12:24:29,064 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 125 transitions. [2022-04-28 12:24:29,218 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 125 edges. 125 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:29,225 INFO L225 Difference]: With dead ends: 369 [2022-04-28 12:24:29,225 INFO L226 Difference]: Without dead ends: 366 [2022-04-28 12:24:29,226 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 218 GetRequests, 191 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 155 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=140, Invalid=616, Unknown=0, NotChecked=0, Total=756 [2022-04-28 12:24:29,226 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 37 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 615 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 335 SdHoareTripleChecker+Invalid, 654 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 615 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.5s IncrementalHoareTripleChecker+Time [2022-04-28 12:24:29,226 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 335 Invalid, 654 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 615 Invalid, 0 Unknown, 0 Unchecked, 2.5s Time] [2022-04-28 12:24:29,227 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 366 states. [2022-04-28 12:24:29,914 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 366 to 364. [2022-04-28 12:24:29,914 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:24:29,919 INFO L82 GeneralOperation]: Start isEquivalent. First operand 366 states. Second operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-28 12:24:29,920 INFO L74 IsIncluded]: Start isIncluded. First operand 366 states. Second operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-28 12:24:29,920 INFO L87 Difference]: Start difference. First operand 366 states. Second operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-28 12:24:29,929 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:29,929 INFO L93 Difference]: Finished difference Result 366 states and 481 transitions. [2022-04-28 12:24:29,929 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 481 transitions. [2022-04-28 12:24:29,930 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:29,930 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:29,931 INFO L74 IsIncluded]: Start isIncluded. First operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) Second operand 366 states. [2022-04-28 12:24:29,931 INFO L87 Difference]: Start difference. First operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) Second operand 366 states. [2022-04-28 12:24:29,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:29,940 INFO L93 Difference]: Finished difference Result 366 states and 481 transitions. [2022-04-28 12:24:29,940 INFO L276 IsEmpty]: Start isEmpty. Operand 366 states and 481 transitions. [2022-04-28 12:24:29,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:29,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:29,941 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:24:29,941 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:24:29,942 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 364 states, 231 states have (on average 1.2294372294372293) internal successors, (284), 239 states have internal predecessors, (284), 99 states have call successors, (99), 34 states have call predecessors, (99), 33 states have return successors, (96), 90 states have call predecessors, (96), 96 states have call successors, (96) [2022-04-28 12:24:29,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 364 states to 364 states and 479 transitions. [2022-04-28 12:24:29,954 INFO L78 Accepts]: Start accepts. Automaton has 364 states and 479 transitions. Word has length 107 [2022-04-28 12:24:29,954 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:24:29,954 INFO L495 AbstractCegarLoop]: Abstraction has 364 states and 479 transitions. [2022-04-28 12:24:29,954 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 12 states have internal predecessors, (32), 7 states have call successors, (19), 2 states have call predecessors, (19), 2 states have return successors, (17), 5 states have call predecessors, (17), 6 states have call successors, (17) [2022-04-28 12:24:29,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 364 states and 479 transitions. [2022-04-28 12:24:30,883 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 479 edges. 479 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:30,883 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 479 transitions. [2022-04-28 12:24:30,884 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-04-28 12:24:30,884 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:24:30,884 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:24:30,909 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:24:31,085 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:24:31,085 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:24:31,085 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:24:31,085 INFO L85 PathProgramCache]: Analyzing trace with hash 1514731471, now seen corresponding path program 5 times [2022-04-28 12:24:31,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:31,086 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1246389898] [2022-04-28 12:24:31,086 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:24:31,086 INFO L85 PathProgramCache]: Analyzing trace with hash 1514731471, now seen corresponding path program 6 times [2022-04-28 12:24:31,086 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:24:31,086 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [612592068] [2022-04-28 12:24:31,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:24:31,086 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:24:31,096 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:24:31,096 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1004335694] [2022-04-28 12:24:31,096 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:24:31,096 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:24:31,097 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:24:31,097 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:24:31,121 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:24:31,212 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 12:24:31,212 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:24:31,214 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 12:24:31,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:24:31,237 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:24:31,739 INFO L272 TraceCheckUtils]: 0: Hoare triple {38060#true} call ULTIMATE.init(); {38060#true} is VALID [2022-04-28 12:24:31,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {38060#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; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,741 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38068#(<= ~counter~0 0)} {38060#true} #98#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {38068#(<= ~counter~0 0)} call #t~ret8 := main(); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {38068#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,742 INFO L272 TraceCheckUtils]: 6: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,742 INFO L290 TraceCheckUtils]: 7: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,743 INFO L290 TraceCheckUtils]: 8: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,743 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #78#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,744 INFO L272 TraceCheckUtils]: 11: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,744 INFO L290 TraceCheckUtils]: 12: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,745 INFO L290 TraceCheckUtils]: 13: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,745 INFO L290 TraceCheckUtils]: 14: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,745 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #80#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,746 INFO L290 TraceCheckUtils]: 16: Hoare triple {38068#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,746 INFO L272 TraceCheckUtils]: 17: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,746 INFO L290 TraceCheckUtils]: 18: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,747 INFO L290 TraceCheckUtils]: 19: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,747 INFO L290 TraceCheckUtils]: 20: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,748 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #82#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,748 INFO L272 TraceCheckUtils]: 22: Hoare triple {38068#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,748 INFO L290 TraceCheckUtils]: 23: Hoare triple {38068#(<= ~counter~0 0)} ~cond := #in~cond; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,749 INFO L290 TraceCheckUtils]: 24: Hoare triple {38068#(<= ~counter~0 0)} assume !(0 == ~cond); {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,749 INFO L290 TraceCheckUtils]: 25: Hoare triple {38068#(<= ~counter~0 0)} assume true; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,750 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38068#(<= ~counter~0 0)} {38068#(<= ~counter~0 0)} #84#return; {38068#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:31,751 INFO L290 TraceCheckUtils]: 27: Hoare triple {38068#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38147#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:31,751 INFO L290 TraceCheckUtils]: 28: Hoare triple {38147#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {38147#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:31,752 INFO L290 TraceCheckUtils]: 29: Hoare triple {38147#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38147#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:31,752 INFO L290 TraceCheckUtils]: 30: Hoare triple {38147#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,753 INFO L290 TraceCheckUtils]: 31: Hoare triple {38157#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,753 INFO L272 TraceCheckUtils]: 32: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,754 INFO L290 TraceCheckUtils]: 33: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,754 INFO L290 TraceCheckUtils]: 34: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,754 INFO L290 TraceCheckUtils]: 35: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,755 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #86#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,755 INFO L272 TraceCheckUtils]: 37: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,756 INFO L290 TraceCheckUtils]: 38: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,756 INFO L290 TraceCheckUtils]: 39: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,757 INFO L290 TraceCheckUtils]: 40: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,757 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #88#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,758 INFO L272 TraceCheckUtils]: 42: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,758 INFO L290 TraceCheckUtils]: 43: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,758 INFO L290 TraceCheckUtils]: 44: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,759 INFO L290 TraceCheckUtils]: 45: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,759 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #90#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,760 INFO L272 TraceCheckUtils]: 47: Hoare triple {38157#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,761 INFO L290 TraceCheckUtils]: 48: Hoare triple {38157#(<= ~counter~0 2)} ~cond := #in~cond; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,761 INFO L290 TraceCheckUtils]: 49: Hoare triple {38157#(<= ~counter~0 2)} assume !(0 == ~cond); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,761 INFO L290 TraceCheckUtils]: 50: Hoare triple {38157#(<= ~counter~0 2)} assume true; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,762 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {38157#(<= ~counter~0 2)} {38157#(<= ~counter~0 2)} #92#return; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,762 INFO L290 TraceCheckUtils]: 52: Hoare triple {38157#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,763 INFO L290 TraceCheckUtils]: 53: Hoare triple {38157#(<= ~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; {38157#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:31,764 INFO L290 TraceCheckUtils]: 54: Hoare triple {38157#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38230#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:31,764 INFO L290 TraceCheckUtils]: 55: Hoare triple {38230#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {38230#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:31,764 INFO L290 TraceCheckUtils]: 56: Hoare triple {38230#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38230#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:31,765 INFO L290 TraceCheckUtils]: 57: Hoare triple {38230#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,765 INFO L290 TraceCheckUtils]: 58: Hoare triple {38240#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,766 INFO L272 TraceCheckUtils]: 59: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,766 INFO L290 TraceCheckUtils]: 60: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,767 INFO L290 TraceCheckUtils]: 61: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,767 INFO L290 TraceCheckUtils]: 62: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,768 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #86#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,768 INFO L272 TraceCheckUtils]: 64: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,769 INFO L290 TraceCheckUtils]: 65: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,769 INFO L290 TraceCheckUtils]: 66: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,769 INFO L290 TraceCheckUtils]: 67: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,770 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #88#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,771 INFO L272 TraceCheckUtils]: 69: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,771 INFO L290 TraceCheckUtils]: 70: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,771 INFO L290 TraceCheckUtils]: 71: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,772 INFO L290 TraceCheckUtils]: 72: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,773 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #90#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,773 INFO L272 TraceCheckUtils]: 74: Hoare triple {38240#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,774 INFO L290 TraceCheckUtils]: 75: Hoare triple {38240#(<= ~counter~0 4)} ~cond := #in~cond; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,774 INFO L290 TraceCheckUtils]: 76: Hoare triple {38240#(<= ~counter~0 4)} assume !(0 == ~cond); {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,774 INFO L290 TraceCheckUtils]: 77: Hoare triple {38240#(<= ~counter~0 4)} assume true; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,775 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {38240#(<= ~counter~0 4)} {38240#(<= ~counter~0 4)} #92#return; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,775 INFO L290 TraceCheckUtils]: 79: Hoare triple {38240#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {38240#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:31,777 INFO L290 TraceCheckUtils]: 80: Hoare triple {38240#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,777 INFO L290 TraceCheckUtils]: 81: Hoare triple {38310#(<= ~counter~0 5)} assume !!(#t~post7 < 100);havoc #t~post7; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,778 INFO L272 TraceCheckUtils]: 82: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,778 INFO L290 TraceCheckUtils]: 83: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,778 INFO L290 TraceCheckUtils]: 84: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,779 INFO L290 TraceCheckUtils]: 85: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,779 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #86#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,780 INFO L272 TraceCheckUtils]: 87: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,780 INFO L290 TraceCheckUtils]: 88: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,780 INFO L290 TraceCheckUtils]: 89: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,781 INFO L290 TraceCheckUtils]: 90: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,781 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #88#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,782 INFO L272 TraceCheckUtils]: 92: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,782 INFO L290 TraceCheckUtils]: 93: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,782 INFO L290 TraceCheckUtils]: 94: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,782 INFO L290 TraceCheckUtils]: 95: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,783 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #90#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,784 INFO L272 TraceCheckUtils]: 97: Hoare triple {38310#(<= ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,784 INFO L290 TraceCheckUtils]: 98: Hoare triple {38310#(<= ~counter~0 5)} ~cond := #in~cond; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,784 INFO L290 TraceCheckUtils]: 99: Hoare triple {38310#(<= ~counter~0 5)} assume !(0 == ~cond); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,784 INFO L290 TraceCheckUtils]: 100: Hoare triple {38310#(<= ~counter~0 5)} assume true; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,785 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38310#(<= ~counter~0 5)} {38310#(<= ~counter~0 5)} #92#return; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,785 INFO L290 TraceCheckUtils]: 102: Hoare triple {38310#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,786 INFO L290 TraceCheckUtils]: 103: Hoare triple {38310#(<= ~counter~0 5)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38310#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:31,786 INFO L290 TraceCheckUtils]: 104: Hoare triple {38310#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38383#(<= |main_#t~post6| 5)} is VALID [2022-04-28 12:24:31,786 INFO L290 TraceCheckUtils]: 105: Hoare triple {38383#(<= |main_#t~post6| 5)} assume !(#t~post6 < 100);havoc #t~post6; {38061#false} is VALID [2022-04-28 12:24:31,786 INFO L272 TraceCheckUtils]: 106: Hoare triple {38061#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {38061#false} is VALID [2022-04-28 12:24:31,786 INFO L290 TraceCheckUtils]: 107: Hoare triple {38061#false} ~cond := #in~cond; {38061#false} is VALID [2022-04-28 12:24:31,787 INFO L290 TraceCheckUtils]: 108: Hoare triple {38061#false} assume 0 == ~cond; {38061#false} is VALID [2022-04-28 12:24:31,787 INFO L290 TraceCheckUtils]: 109: Hoare triple {38061#false} assume !false; {38061#false} is VALID [2022-04-28 12:24:31,787 INFO L134 CoverageAnalysis]: Checked inductivity of 341 backedges. 24 proven. 221 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-28 12:24:31,787 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:24:32,216 INFO L290 TraceCheckUtils]: 109: Hoare triple {38061#false} assume !false; {38061#false} is VALID [2022-04-28 12:24:32,216 INFO L290 TraceCheckUtils]: 108: Hoare triple {38061#false} assume 0 == ~cond; {38061#false} is VALID [2022-04-28 12:24:32,222 INFO L290 TraceCheckUtils]: 107: Hoare triple {38061#false} ~cond := #in~cond; {38061#false} is VALID [2022-04-28 12:24:32,222 INFO L272 TraceCheckUtils]: 106: Hoare triple {38061#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {38061#false} is VALID [2022-04-28 12:24:32,223 INFO L290 TraceCheckUtils]: 105: Hoare triple {38411#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {38061#false} is VALID [2022-04-28 12:24:32,224 INFO L290 TraceCheckUtils]: 104: Hoare triple {38415#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38411#(< |main_#t~post6| 100)} is VALID [2022-04-28 12:24:32,224 INFO L290 TraceCheckUtils]: 103: Hoare triple {38415#(< ~counter~0 100)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,224 INFO L290 TraceCheckUtils]: 102: Hoare triple {38415#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,225 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {38060#true} {38415#(< ~counter~0 100)} #92#return; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,225 INFO L290 TraceCheckUtils]: 100: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,225 INFO L290 TraceCheckUtils]: 99: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,225 INFO L290 TraceCheckUtils]: 98: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,225 INFO L272 TraceCheckUtils]: 97: Hoare triple {38415#(< ~counter~0 100)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,226 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {38060#true} {38415#(< ~counter~0 100)} #90#return; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,226 INFO L290 TraceCheckUtils]: 95: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,226 INFO L290 TraceCheckUtils]: 94: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,226 INFO L290 TraceCheckUtils]: 93: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,226 INFO L272 TraceCheckUtils]: 92: Hoare triple {38415#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,227 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {38060#true} {38415#(< ~counter~0 100)} #88#return; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,227 INFO L290 TraceCheckUtils]: 90: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,227 INFO L290 TraceCheckUtils]: 89: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,227 INFO L290 TraceCheckUtils]: 88: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,227 INFO L272 TraceCheckUtils]: 87: Hoare triple {38415#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,227 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {38060#true} {38415#(< ~counter~0 100)} #86#return; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,227 INFO L290 TraceCheckUtils]: 85: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,227 INFO L290 TraceCheckUtils]: 84: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,228 INFO L290 TraceCheckUtils]: 83: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,228 INFO L272 TraceCheckUtils]: 82: Hoare triple {38415#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,228 INFO L290 TraceCheckUtils]: 81: Hoare triple {38415#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,229 INFO L290 TraceCheckUtils]: 80: Hoare triple {38488#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38415#(< ~counter~0 100)} is VALID [2022-04-28 12:24:32,229 INFO L290 TraceCheckUtils]: 79: Hoare triple {38488#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,230 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {38060#true} {38488#(< ~counter~0 99)} #92#return; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,230 INFO L290 TraceCheckUtils]: 77: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,230 INFO L290 TraceCheckUtils]: 76: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,230 INFO L290 TraceCheckUtils]: 75: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,230 INFO L272 TraceCheckUtils]: 74: Hoare triple {38488#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,231 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {38060#true} {38488#(< ~counter~0 99)} #90#return; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,231 INFO L290 TraceCheckUtils]: 72: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,231 INFO L290 TraceCheckUtils]: 71: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,231 INFO L290 TraceCheckUtils]: 70: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,231 INFO L272 TraceCheckUtils]: 69: Hoare triple {38488#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,233 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {38060#true} {38488#(< ~counter~0 99)} #88#return; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,233 INFO L290 TraceCheckUtils]: 67: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,233 INFO L290 TraceCheckUtils]: 66: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,233 INFO L290 TraceCheckUtils]: 65: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,233 INFO L272 TraceCheckUtils]: 64: Hoare triple {38488#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,235 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {38060#true} {38488#(< ~counter~0 99)} #86#return; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,235 INFO L290 TraceCheckUtils]: 62: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,235 INFO L290 TraceCheckUtils]: 61: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,235 INFO L290 TraceCheckUtils]: 60: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,235 INFO L272 TraceCheckUtils]: 59: Hoare triple {38488#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,236 INFO L290 TraceCheckUtils]: 58: Hoare triple {38488#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,237 INFO L290 TraceCheckUtils]: 57: Hoare triple {38558#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38488#(< ~counter~0 99)} is VALID [2022-04-28 12:24:32,238 INFO L290 TraceCheckUtils]: 56: Hoare triple {38558#(< ~counter~0 98)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38558#(< ~counter~0 98)} is VALID [2022-04-28 12:24:32,238 INFO L290 TraceCheckUtils]: 55: Hoare triple {38558#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {38558#(< ~counter~0 98)} is VALID [2022-04-28 12:24:32,238 INFO L290 TraceCheckUtils]: 54: Hoare triple {38568#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38558#(< ~counter~0 98)} is VALID [2022-04-28 12:24:32,239 INFO L290 TraceCheckUtils]: 53: Hoare triple {38568#(< ~counter~0 97)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,239 INFO L290 TraceCheckUtils]: 52: Hoare triple {38568#(< ~counter~0 97)} assume !(~c~0 >= ~b~0); {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,240 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {38060#true} {38568#(< ~counter~0 97)} #92#return; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,240 INFO L290 TraceCheckUtils]: 50: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,240 INFO L290 TraceCheckUtils]: 49: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,240 INFO L290 TraceCheckUtils]: 48: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,240 INFO L272 TraceCheckUtils]: 47: Hoare triple {38568#(< ~counter~0 97)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,240 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {38060#true} {38568#(< ~counter~0 97)} #90#return; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,241 INFO L290 TraceCheckUtils]: 45: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,241 INFO L290 TraceCheckUtils]: 44: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,241 INFO L290 TraceCheckUtils]: 43: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,241 INFO L272 TraceCheckUtils]: 42: Hoare triple {38568#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,241 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {38060#true} {38568#(< ~counter~0 97)} #88#return; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,241 INFO L290 TraceCheckUtils]: 40: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,241 INFO L290 TraceCheckUtils]: 39: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,242 INFO L290 TraceCheckUtils]: 38: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,242 INFO L272 TraceCheckUtils]: 37: Hoare triple {38568#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,242 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {38060#true} {38568#(< ~counter~0 97)} #86#return; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,242 INFO L290 TraceCheckUtils]: 35: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,242 INFO L290 TraceCheckUtils]: 34: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,242 INFO L290 TraceCheckUtils]: 33: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,242 INFO L272 TraceCheckUtils]: 32: Hoare triple {38568#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,243 INFO L290 TraceCheckUtils]: 31: Hoare triple {38568#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,243 INFO L290 TraceCheckUtils]: 30: Hoare triple {38641#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {38568#(< ~counter~0 97)} is VALID [2022-04-28 12:24:32,244 INFO L290 TraceCheckUtils]: 29: Hoare triple {38641#(< ~counter~0 96)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {38641#(< ~counter~0 96)} is VALID [2022-04-28 12:24:32,244 INFO L290 TraceCheckUtils]: 28: Hoare triple {38641#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {38641#(< ~counter~0 96)} is VALID [2022-04-28 12:24:32,244 INFO L290 TraceCheckUtils]: 27: Hoare triple {38651#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {38641#(< ~counter~0 96)} is VALID [2022-04-28 12:24:32,245 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {38060#true} {38651#(< ~counter~0 95)} #84#return; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,245 INFO L290 TraceCheckUtils]: 25: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,245 INFO L290 TraceCheckUtils]: 24: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,245 INFO L290 TraceCheckUtils]: 23: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,245 INFO L272 TraceCheckUtils]: 22: Hoare triple {38651#(< ~counter~0 95)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,246 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {38060#true} {38651#(< ~counter~0 95)} #82#return; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,246 INFO L290 TraceCheckUtils]: 20: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,246 INFO L290 TraceCheckUtils]: 18: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,246 INFO L272 TraceCheckUtils]: 17: Hoare triple {38651#(< ~counter~0 95)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,246 INFO L290 TraceCheckUtils]: 16: Hoare triple {38651#(< ~counter~0 95)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,247 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {38060#true} {38651#(< ~counter~0 95)} #80#return; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,247 INFO L290 TraceCheckUtils]: 14: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,247 INFO L290 TraceCheckUtils]: 13: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,247 INFO L290 TraceCheckUtils]: 12: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,247 INFO L272 TraceCheckUtils]: 11: Hoare triple {38651#(< ~counter~0 95)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,247 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38060#true} {38651#(< ~counter~0 95)} #78#return; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,247 INFO L290 TraceCheckUtils]: 9: Hoare triple {38060#true} assume true; {38060#true} is VALID [2022-04-28 12:24:32,247 INFO L290 TraceCheckUtils]: 8: Hoare triple {38060#true} assume !(0 == ~cond); {38060#true} is VALID [2022-04-28 12:24:32,247 INFO L290 TraceCheckUtils]: 7: Hoare triple {38060#true} ~cond := #in~cond; {38060#true} is VALID [2022-04-28 12:24:32,248 INFO L272 TraceCheckUtils]: 6: Hoare triple {38651#(< ~counter~0 95)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {38060#true} is VALID [2022-04-28 12:24:32,248 INFO L290 TraceCheckUtils]: 5: Hoare triple {38651#(< ~counter~0 95)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,248 INFO L272 TraceCheckUtils]: 4: Hoare triple {38651#(< ~counter~0 95)} call #t~ret8 := main(); {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,248 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38651#(< ~counter~0 95)} {38060#true} #98#return; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,249 INFO L290 TraceCheckUtils]: 2: Hoare triple {38651#(< ~counter~0 95)} assume true; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,249 INFO L290 TraceCheckUtils]: 1: Hoare triple {38060#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; {38651#(< ~counter~0 95)} is VALID [2022-04-28 12:24:32,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {38060#true} call ULTIMATE.init(); {38060#true} is VALID [2022-04-28 12:24:32,250 INFO L134 CoverageAnalysis]: Checked inductivity of 341 backedges. 24 proven. 29 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-28 12:24:32,250 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:24:32,250 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [612592068] [2022-04-28 12:24:32,250 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:24:32,250 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1004335694] [2022-04-28 12:24:32,250 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1004335694] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:24:32,250 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:24:32,250 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 12:24:32,250 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:24:32,250 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1246389898] [2022-04-28 12:24:32,250 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1246389898] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:24:32,250 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:24:32,251 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:24:32,251 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [36558175] [2022-04-28 12:24:32,251 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:24:32,251 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 110 [2022-04-28 12:24:32,251 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:24:32,251 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:32,311 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:32,311 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:24:32,311 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:32,311 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:24:32,312 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:24:32,312 INFO L87 Difference]: Start difference. First operand 364 states and 479 transitions. Second operand has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:33,458 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:33,458 INFO L93 Difference]: Finished difference Result 434 states and 549 transitions. [2022-04-28 12:24:33,458 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:24:33,458 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 110 [2022-04-28 12:24:33,459 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:24:33,459 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:33,460 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 133 transitions. [2022-04-28 12:24:33,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:33,461 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 133 transitions. [2022-04-28 12:24:33,461 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 133 transitions. [2022-04-28 12:24:33,566 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 133 edges. 133 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:33,579 INFO L225 Difference]: With dead ends: 434 [2022-04-28 12:24:33,579 INFO L226 Difference]: Without dead ends: 425 [2022-04-28 12:24:33,579 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 223 GetRequests, 205 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=153, Invalid=227, Unknown=0, NotChecked=0, Total=380 [2022-04-28 12:24:33,580 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 42 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 66 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 211 SdHoareTripleChecker+Invalid, 106 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 66 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:24:33,580 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [42 Valid, 211 Invalid, 106 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 66 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:24:33,581 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 425 states. [2022-04-28 12:24:34,373 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 425 to 423. [2022-04-28 12:24:34,373 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:24:34,374 INFO L82 GeneralOperation]: Start isEquivalent. First operand 425 states. Second operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 12:24:34,374 INFO L74 IsIncluded]: Start isIncluded. First operand 425 states. Second operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 12:24:34,374 INFO L87 Difference]: Start difference. First operand 425 states. Second operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 12:24:34,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:34,385 INFO L93 Difference]: Finished difference Result 425 states and 538 transitions. [2022-04-28 12:24:34,385 INFO L276 IsEmpty]: Start isEmpty. Operand 425 states and 538 transitions. [2022-04-28 12:24:34,386 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:34,386 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:34,386 INFO L74 IsIncluded]: Start isIncluded. First operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) Second operand 425 states. [2022-04-28 12:24:34,387 INFO L87 Difference]: Start difference. First operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) Second operand 425 states. [2022-04-28 12:24:34,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:34,398 INFO L93 Difference]: Finished difference Result 425 states and 538 transitions. [2022-04-28 12:24:34,398 INFO L276 IsEmpty]: Start isEmpty. Operand 425 states and 538 transitions. [2022-04-28 12:24:34,399 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:34,399 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:34,400 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:24:34,400 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:24:34,401 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 423 states, 272 states have (on average 1.2022058823529411) internal successors, (327), 279 states have internal predecessors, (327), 106 states have call successors, (106), 45 states have call predecessors, (106), 44 states have return successors, (103), 98 states have call predecessors, (103), 103 states have call successors, (103) [2022-04-28 12:24:34,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 423 states to 423 states and 536 transitions. [2022-04-28 12:24:34,415 INFO L78 Accepts]: Start accepts. Automaton has 423 states and 536 transitions. Word has length 110 [2022-04-28 12:24:34,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:24:34,415 INFO L495 AbstractCegarLoop]: Abstraction has 423 states and 536 transitions. [2022-04-28 12:24:34,415 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.222222222222222) internal successors, (38), 8 states have internal predecessors, (38), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:34,415 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 423 states and 536 transitions. [2022-04-28 12:24:35,382 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 536 edges. 536 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:35,382 INFO L276 IsEmpty]: Start isEmpty. Operand 423 states and 536 transitions. [2022-04-28 12:24:35,383 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 12:24:35,383 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:24:35,383 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:24:35,387 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Ended with exit code 0 [2022-04-28 12:24:35,583 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:24:35,583 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:24:35,584 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:24:35,584 INFO L85 PathProgramCache]: Analyzing trace with hash -289933735, now seen corresponding path program 5 times [2022-04-28 12:24:35,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:35,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [653234625] [2022-04-28 12:24:35,584 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:24:35,584 INFO L85 PathProgramCache]: Analyzing trace with hash -289933735, now seen corresponding path program 6 times [2022-04-28 12:24:35,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:24:35,584 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1340854668] [2022-04-28 12:24:35,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:24:35,585 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:24:35,596 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:24:35,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [259701533] [2022-04-28 12:24:35,597 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:24:35,597 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:24:35,597 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:24:35,598 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:24:35,599 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:24:35,660 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 12:24:35,660 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:24:35,661 INFO L263 TraceCheckSpWp]: Trace formula consists of 269 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 12:24:35,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:24:35,678 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:24:35,965 INFO L272 TraceCheckUtils]: 0: Hoare triple {41307#true} call ULTIMATE.init(); {41307#true} is VALID [2022-04-28 12:24:35,965 INFO L290 TraceCheckUtils]: 1: Hoare triple {41307#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; {41307#true} is VALID [2022-04-28 12:24:35,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41307#true} {41307#true} #98#return; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L272 TraceCheckUtils]: 4: Hoare triple {41307#true} call #t~ret8 := main(); {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 5: Hoare triple {41307#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L272 TraceCheckUtils]: 6: Hoare triple {41307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 7: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 8: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 9: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41307#true} {41307#true} #78#return; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L272 TraceCheckUtils]: 11: Hoare triple {41307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 12: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 13: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 14: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41307#true} {41307#true} #80#return; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L290 TraceCheckUtils]: 16: Hoare triple {41307#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {41307#true} is VALID [2022-04-28 12:24:35,966 INFO L272 TraceCheckUtils]: 17: Hoare triple {41307#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 18: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 19: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41307#true} {41307#true} #82#return; {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L272 TraceCheckUtils]: 22: Hoare triple {41307#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 23: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 24: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 25: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41307#true} {41307#true} #84#return; {41307#true} is VALID [2022-04-28 12:24:35,967 INFO L290 TraceCheckUtils]: 27: Hoare triple {41307#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 28: Hoare triple {41307#true} assume !!(#t~post6 < 100);havoc #t~post6; {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 29: Hoare triple {41307#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 30: Hoare triple {41307#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 31: Hoare triple {41307#true} assume !!(#t~post7 < 100);havoc #t~post7; {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L272 TraceCheckUtils]: 32: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 33: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 34: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,968 INFO L290 TraceCheckUtils]: 35: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {41307#true} {41307#true} #86#return; {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L272 TraceCheckUtils]: 37: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L290 TraceCheckUtils]: 38: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L290 TraceCheckUtils]: 39: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L290 TraceCheckUtils]: 40: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41307#true} {41307#true} #88#return; {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L272 TraceCheckUtils]: 42: Hoare triple {41307#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L290 TraceCheckUtils]: 43: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,969 INFO L290 TraceCheckUtils]: 44: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L290 TraceCheckUtils]: 45: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {41307#true} {41307#true} #90#return; {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L272 TraceCheckUtils]: 47: Hoare triple {41307#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L290 TraceCheckUtils]: 48: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L290 TraceCheckUtils]: 49: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L290 TraceCheckUtils]: 50: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,970 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {41307#true} {41307#true} #92#return; {41307#true} is VALID [2022-04-28 12:24:35,971 INFO L290 TraceCheckUtils]: 52: Hoare triple {41307#true} assume !(~c~0 >= ~b~0); {41468#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:24:35,972 INFO L290 TraceCheckUtils]: 53: Hoare triple {41468#(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; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:24:35,972 INFO L290 TraceCheckUtils]: 54: Hoare triple {41472#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:24:35,972 INFO L290 TraceCheckUtils]: 55: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:24:35,973 INFO L290 TraceCheckUtils]: 56: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,973 INFO L290 TraceCheckUtils]: 57: Hoare triple {41482#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,973 INFO L290 TraceCheckUtils]: 58: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,974 INFO L272 TraceCheckUtils]: 59: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,974 INFO L290 TraceCheckUtils]: 60: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,974 INFO L290 TraceCheckUtils]: 61: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,974 INFO L290 TraceCheckUtils]: 62: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,974 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #86#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,975 INFO L272 TraceCheckUtils]: 64: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,975 INFO L290 TraceCheckUtils]: 65: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,975 INFO L290 TraceCheckUtils]: 66: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,975 INFO L290 TraceCheckUtils]: 67: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,976 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #88#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,976 INFO L272 TraceCheckUtils]: 69: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,976 INFO L290 TraceCheckUtils]: 70: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,976 INFO L290 TraceCheckUtils]: 71: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,976 INFO L290 TraceCheckUtils]: 72: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,977 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #90#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,977 INFO L272 TraceCheckUtils]: 74: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,977 INFO L290 TraceCheckUtils]: 75: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,977 INFO L290 TraceCheckUtils]: 76: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,977 INFO L290 TraceCheckUtils]: 77: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,978 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #92#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:35,980 INFO L290 TraceCheckUtils]: 79: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,980 INFO L290 TraceCheckUtils]: 80: Hoare triple {41552#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,980 INFO L290 TraceCheckUtils]: 81: Hoare triple {41552#(< 0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,980 INFO L272 TraceCheckUtils]: 82: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,980 INFO L290 TraceCheckUtils]: 83: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,981 INFO L290 TraceCheckUtils]: 84: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,981 INFO L290 TraceCheckUtils]: 85: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,981 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #86#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,981 INFO L272 TraceCheckUtils]: 87: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,981 INFO L290 TraceCheckUtils]: 88: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,981 INFO L290 TraceCheckUtils]: 89: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,982 INFO L290 TraceCheckUtils]: 90: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,982 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #88#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,982 INFO L272 TraceCheckUtils]: 92: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,982 INFO L290 TraceCheckUtils]: 93: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,982 INFO L290 TraceCheckUtils]: 94: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,983 INFO L290 TraceCheckUtils]: 95: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,983 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #90#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,983 INFO L272 TraceCheckUtils]: 97: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:35,983 INFO L290 TraceCheckUtils]: 98: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:35,984 INFO L290 TraceCheckUtils]: 99: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:35,984 INFO L290 TraceCheckUtils]: 100: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:35,984 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #92#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,985 INFO L290 TraceCheckUtils]: 102: Hoare triple {41552#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:35,985 INFO L290 TraceCheckUtils]: 103: Hoare triple {41552#(< 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; {41625#(< 0 main_~b~0)} is VALID [2022-04-28 12:24:35,985 INFO L290 TraceCheckUtils]: 104: Hoare triple {41625#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-28 12:24:35,986 INFO L290 TraceCheckUtils]: 105: Hoare triple {41625#(< 0 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-28 12:24:35,986 INFO L290 TraceCheckUtils]: 106: Hoare triple {41625#(< 0 main_~b~0)} assume !(0 != ~b~0); {41308#false} is VALID [2022-04-28 12:24:35,986 INFO L272 TraceCheckUtils]: 107: Hoare triple {41308#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {41308#false} is VALID [2022-04-28 12:24:35,986 INFO L290 TraceCheckUtils]: 108: Hoare triple {41308#false} ~cond := #in~cond; {41308#false} is VALID [2022-04-28 12:24:35,986 INFO L290 TraceCheckUtils]: 109: Hoare triple {41308#false} assume 0 == ~cond; {41308#false} is VALID [2022-04-28 12:24:35,986 INFO L290 TraceCheckUtils]: 110: Hoare triple {41308#false} assume !false; {41308#false} is VALID [2022-04-28 12:24:35,987 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 44 proven. 11 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-28 12:24:35,987 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:24:36,352 INFO L290 TraceCheckUtils]: 110: Hoare triple {41308#false} assume !false; {41308#false} is VALID [2022-04-28 12:24:36,352 INFO L290 TraceCheckUtils]: 109: Hoare triple {41308#false} assume 0 == ~cond; {41308#false} is VALID [2022-04-28 12:24:36,352 INFO L290 TraceCheckUtils]: 108: Hoare triple {41308#false} ~cond := #in~cond; {41308#false} is VALID [2022-04-28 12:24:36,352 INFO L272 TraceCheckUtils]: 107: Hoare triple {41308#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {41308#false} is VALID [2022-04-28 12:24:36,353 INFO L290 TraceCheckUtils]: 106: Hoare triple {41625#(< 0 main_~b~0)} assume !(0 != ~b~0); {41308#false} is VALID [2022-04-28 12:24:36,353 INFO L290 TraceCheckUtils]: 105: Hoare triple {41625#(< 0 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-28 12:24:36,353 INFO L290 TraceCheckUtils]: 104: Hoare triple {41625#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41625#(< 0 main_~b~0)} is VALID [2022-04-28 12:24:36,354 INFO L290 TraceCheckUtils]: 103: Hoare triple {41552#(< 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; {41625#(< 0 main_~b~0)} is VALID [2022-04-28 12:24:36,354 INFO L290 TraceCheckUtils]: 102: Hoare triple {41552#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,355 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #92#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,355 INFO L290 TraceCheckUtils]: 100: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,355 INFO L290 TraceCheckUtils]: 99: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,355 INFO L290 TraceCheckUtils]: 98: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,355 INFO L272 TraceCheckUtils]: 97: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,356 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #90#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,356 INFO L290 TraceCheckUtils]: 95: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,356 INFO L290 TraceCheckUtils]: 94: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,356 INFO L290 TraceCheckUtils]: 93: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,356 INFO L272 TraceCheckUtils]: 92: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,357 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #88#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,357 INFO L290 TraceCheckUtils]: 90: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,357 INFO L290 TraceCheckUtils]: 89: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,357 INFO L290 TraceCheckUtils]: 88: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,357 INFO L272 TraceCheckUtils]: 87: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,357 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {41307#true} {41552#(< 0 main_~c~0)} #86#return; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,357 INFO L290 TraceCheckUtils]: 85: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,357 INFO L290 TraceCheckUtils]: 84: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,358 INFO L290 TraceCheckUtils]: 83: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,358 INFO L272 TraceCheckUtils]: 82: Hoare triple {41552#(< 0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,358 INFO L290 TraceCheckUtils]: 81: Hoare triple {41552#(< 0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,358 INFO L290 TraceCheckUtils]: 80: Hoare triple {41552#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,360 INFO L290 TraceCheckUtils]: 79: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {41552#(< 0 main_~c~0)} is VALID [2022-04-28 12:24:36,360 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #92#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,360 INFO L290 TraceCheckUtils]: 77: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,361 INFO L290 TraceCheckUtils]: 76: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,361 INFO L290 TraceCheckUtils]: 75: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,361 INFO L272 TraceCheckUtils]: 74: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,361 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #90#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,361 INFO L290 TraceCheckUtils]: 72: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,362 INFO L290 TraceCheckUtils]: 71: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,362 INFO L290 TraceCheckUtils]: 70: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,362 INFO L272 TraceCheckUtils]: 69: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,362 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #88#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,362 INFO L290 TraceCheckUtils]: 67: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,362 INFO L290 TraceCheckUtils]: 66: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,362 INFO L290 TraceCheckUtils]: 65: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,363 INFO L272 TraceCheckUtils]: 64: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,363 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {41307#true} {41482#(< main_~b~0 main_~c~0)} #86#return; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,363 INFO L290 TraceCheckUtils]: 62: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,363 INFO L290 TraceCheckUtils]: 61: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,363 INFO L290 TraceCheckUtils]: 60: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,363 INFO L272 TraceCheckUtils]: 59: Hoare triple {41482#(< main_~b~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,364 INFO L290 TraceCheckUtils]: 58: Hoare triple {41482#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,364 INFO L290 TraceCheckUtils]: 57: Hoare triple {41482#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,364 INFO L290 TraceCheckUtils]: 56: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41482#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 12:24:36,364 INFO L290 TraceCheckUtils]: 55: Hoare triple {41472#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:24:36,365 INFO L290 TraceCheckUtils]: 54: Hoare triple {41472#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:24:36,365 INFO L290 TraceCheckUtils]: 53: Hoare triple {41468#(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; {41472#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 12:24:36,365 INFO L290 TraceCheckUtils]: 52: Hoare triple {41307#true} assume !(~c~0 >= ~b~0); {41468#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 12:24:36,365 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {41307#true} {41307#true} #92#return; {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L290 TraceCheckUtils]: 50: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L290 TraceCheckUtils]: 49: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L290 TraceCheckUtils]: 48: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L272 TraceCheckUtils]: 47: Hoare triple {41307#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {41307#true} {41307#true} #90#return; {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L290 TraceCheckUtils]: 45: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L290 TraceCheckUtils]: 44: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L290 TraceCheckUtils]: 43: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L272 TraceCheckUtils]: 42: Hoare triple {41307#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,366 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {41307#true} {41307#true} #88#return; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 40: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 39: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 38: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L272 TraceCheckUtils]: 37: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {41307#true} {41307#true} #86#return; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 34: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 33: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L272 TraceCheckUtils]: 32: Hoare triple {41307#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 31: Hoare triple {41307#true} assume !!(#t~post7 < 100);havoc #t~post7; {41307#true} is VALID [2022-04-28 12:24:36,367 INFO L290 TraceCheckUtils]: 30: Hoare triple {41307#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 29: Hoare triple {41307#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 28: Hoare triple {41307#true} assume !!(#t~post6 < 100);havoc #t~post6; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 27: Hoare triple {41307#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41307#true} {41307#true} #84#return; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 25: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 24: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 23: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L272 TraceCheckUtils]: 22: Hoare triple {41307#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41307#true} {41307#true} #82#return; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 20: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,368 INFO L290 TraceCheckUtils]: 19: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L290 TraceCheckUtils]: 18: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L272 TraceCheckUtils]: 17: Hoare triple {41307#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L290 TraceCheckUtils]: 16: Hoare triple {41307#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41307#true} {41307#true} #80#return; {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L290 TraceCheckUtils]: 14: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L290 TraceCheckUtils]: 13: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L290 TraceCheckUtils]: 12: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L272 TraceCheckUtils]: 11: Hoare triple {41307#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41307#true} {41307#true} #78#return; {41307#true} is VALID [2022-04-28 12:24:36,369 INFO L290 TraceCheckUtils]: 9: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {41307#true} assume !(0 == ~cond); {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {41307#true} ~cond := #in~cond; {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L272 TraceCheckUtils]: 6: Hoare triple {41307#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L290 TraceCheckUtils]: 5: Hoare triple {41307#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L272 TraceCheckUtils]: 4: Hoare triple {41307#true} call #t~ret8 := main(); {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41307#true} {41307#true} #98#return; {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L290 TraceCheckUtils]: 2: Hoare triple {41307#true} assume true; {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L290 TraceCheckUtils]: 1: Hoare triple {41307#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; {41307#true} is VALID [2022-04-28 12:24:36,370 INFO L272 TraceCheckUtils]: 0: Hoare triple {41307#true} call ULTIMATE.init(); {41307#true} is VALID [2022-04-28 12:24:36,371 INFO L134 CoverageAnalysis]: Checked inductivity of 343 backedges. 44 proven. 11 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-28 12:24:36,371 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:24:36,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1340854668] [2022-04-28 12:24:36,371 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:24:36,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [259701533] [2022-04-28 12:24:36,371 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [259701533] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:24:36,371 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:24:36,371 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 7 [2022-04-28 12:24:36,371 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:24:36,371 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [653234625] [2022-04-28 12:24:36,372 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [653234625] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:24:36,372 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:24:36,372 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 12:24:36,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1583849054] [2022-04-28 12:24:36,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:24:36,372 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) Word has length 111 [2022-04-28 12:24:36,373 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:24:36,373 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-28 12:24:36,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:36,431 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 12:24:36,431 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:36,431 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 12:24:36,431 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-04-28 12:24:36,432 INFO L87 Difference]: Start difference. First operand 423 states and 536 transitions. Second operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-28 12:24:38,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:38,762 INFO L93 Difference]: Finished difference Result 589 states and 810 transitions. [2022-04-28 12:24:38,762 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 12:24:38,762 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) Word has length 111 [2022-04-28 12:24:38,762 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:24:38,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-28 12:24:38,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 178 transitions. [2022-04-28 12:24:38,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-28 12:24:38,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 178 transitions. [2022-04-28 12:24:38,766 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 178 transitions. [2022-04-28 12:24:38,939 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 178 edges. 178 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:38,962 INFO L225 Difference]: With dead ends: 589 [2022-04-28 12:24:38,962 INFO L226 Difference]: Without dead ends: 581 [2022-04-28 12:24:38,963 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 237 GetRequests, 220 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=75, Invalid=197, Unknown=0, NotChecked=0, Total=272 [2022-04-28 12:24:38,963 INFO L413 NwaCegarLoop]: 108 mSDtfsCounter, 32 mSDsluCounter, 261 mSDsCounter, 0 mSdLazyCounter, 267 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 369 SdHoareTripleChecker+Invalid, 312 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 267 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:24:38,964 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [41 Valid, 369 Invalid, 312 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 267 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 12:24:38,964 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 581 states. [2022-04-28 12:24:39,983 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 581 to 470. [2022-04-28 12:24:39,983 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:24:39,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 581 states. Second operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:39,985 INFO L74 IsIncluded]: Start isIncluded. First operand 581 states. Second operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:39,985 INFO L87 Difference]: Start difference. First operand 581 states. Second operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:40,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:40,004 INFO L93 Difference]: Finished difference Result 581 states and 798 transitions. [2022-04-28 12:24:40,004 INFO L276 IsEmpty]: Start isEmpty. Operand 581 states and 798 transitions. [2022-04-28 12:24:40,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:40,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:40,006 INFO L74 IsIncluded]: Start isIncluded. First operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 581 states. [2022-04-28 12:24:40,006 INFO L87 Difference]: Start difference. First operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 581 states. [2022-04-28 12:24:40,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:40,027 INFO L93 Difference]: Finished difference Result 581 states and 798 transitions. [2022-04-28 12:24:40,027 INFO L276 IsEmpty]: Start isEmpty. Operand 581 states and 798 transitions. [2022-04-28 12:24:40,028 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:40,028 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:40,028 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:24:40,028 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:24:40,029 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 470 states, 301 states have (on average 1.2259136212624584) internal successors, (369), 306 states have internal predecessors, (369), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:40,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 470 states to 470 states and 614 transitions. [2022-04-28 12:24:40,042 INFO L78 Accepts]: Start accepts. Automaton has 470 states and 614 transitions. Word has length 111 [2022-04-28 12:24:40,042 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:24:40,042 INFO L495 AbstractCegarLoop]: Abstraction has 470 states and 614 transitions. [2022-04-28 12:24:40,042 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.714285714285714) internal successors, (33), 7 states have internal predecessors, (33), 4 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (17), 3 states have call predecessors, (17), 3 states have call successors, (17) [2022-04-28 12:24:40,042 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 470 states and 614 transitions. [2022-04-28 12:24:41,111 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 614 edges. 614 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:41,111 INFO L276 IsEmpty]: Start isEmpty. Operand 470 states and 614 transitions. [2022-04-28 12:24:41,112 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2022-04-28 12:24:41,112 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:24:41,112 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:24:41,129 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:24:41,312 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:24:41,313 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:24:41,313 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:24:41,313 INFO L85 PathProgramCache]: Analyzing trace with hash -1282766646, now seen corresponding path program 3 times [2022-04-28 12:24:41,313 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:41,313 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1671275458] [2022-04-28 12:24:41,314 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:24:41,314 INFO L85 PathProgramCache]: Analyzing trace with hash -1282766646, now seen corresponding path program 4 times [2022-04-28 12:24:41,314 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:24:41,314 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1855644480] [2022-04-28 12:24:41,314 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:24:41,314 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:24:41,328 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:24:41,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1041962674] [2022-04-28 12:24:41,328 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:24:41,328 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:24:41,328 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:24:41,329 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:24:41,352 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:24:41,403 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:24:41,403 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:24:41,404 INFO L263 TraceCheckSpWp]: Trace formula consists of 312 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 12:24:41,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:24:41,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:24:41,835 INFO L272 TraceCheckUtils]: 0: Hoare triple {45285#true} call ULTIMATE.init(); {45285#true} is VALID [2022-04-28 12:24:41,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {45285#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; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45293#(<= ~counter~0 0)} {45285#true} #98#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,837 INFO L272 TraceCheckUtils]: 4: Hoare triple {45293#(<= ~counter~0 0)} call #t~ret8 := main(); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,837 INFO L290 TraceCheckUtils]: 5: Hoare triple {45293#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,837 INFO L272 TraceCheckUtils]: 6: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,838 INFO L290 TraceCheckUtils]: 7: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,838 INFO L290 TraceCheckUtils]: 8: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,838 INFO L290 TraceCheckUtils]: 9: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,839 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #78#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,839 INFO L272 TraceCheckUtils]: 11: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,839 INFO L290 TraceCheckUtils]: 12: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,840 INFO L290 TraceCheckUtils]: 13: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,840 INFO L290 TraceCheckUtils]: 14: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,840 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #80#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,840 INFO L290 TraceCheckUtils]: 16: Hoare triple {45293#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,841 INFO L272 TraceCheckUtils]: 17: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,841 INFO L290 TraceCheckUtils]: 18: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,841 INFO L290 TraceCheckUtils]: 19: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,842 INFO L290 TraceCheckUtils]: 20: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,842 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #82#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,842 INFO L272 TraceCheckUtils]: 22: Hoare triple {45293#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,843 INFO L290 TraceCheckUtils]: 23: Hoare triple {45293#(<= ~counter~0 0)} ~cond := #in~cond; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,843 INFO L290 TraceCheckUtils]: 24: Hoare triple {45293#(<= ~counter~0 0)} assume !(0 == ~cond); {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,843 INFO L290 TraceCheckUtils]: 25: Hoare triple {45293#(<= ~counter~0 0)} assume true; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,844 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {45293#(<= ~counter~0 0)} {45293#(<= ~counter~0 0)} #84#return; {45293#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:41,845 INFO L290 TraceCheckUtils]: 27: Hoare triple {45293#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45372#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:41,845 INFO L290 TraceCheckUtils]: 28: Hoare triple {45372#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {45372#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:41,845 INFO L290 TraceCheckUtils]: 29: Hoare triple {45372#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45372#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:41,846 INFO L290 TraceCheckUtils]: 30: Hoare triple {45372#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,846 INFO L290 TraceCheckUtils]: 31: Hoare triple {45382#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,847 INFO L272 TraceCheckUtils]: 32: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,847 INFO L290 TraceCheckUtils]: 33: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,847 INFO L290 TraceCheckUtils]: 34: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,847 INFO L290 TraceCheckUtils]: 35: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,848 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #86#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,848 INFO L272 TraceCheckUtils]: 37: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,849 INFO L290 TraceCheckUtils]: 38: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,849 INFO L290 TraceCheckUtils]: 39: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,849 INFO L290 TraceCheckUtils]: 40: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,850 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #88#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,850 INFO L272 TraceCheckUtils]: 42: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,851 INFO L290 TraceCheckUtils]: 43: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,851 INFO L290 TraceCheckUtils]: 44: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,851 INFO L290 TraceCheckUtils]: 45: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,852 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #90#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,852 INFO L272 TraceCheckUtils]: 47: Hoare triple {45382#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,852 INFO L290 TraceCheckUtils]: 48: Hoare triple {45382#(<= ~counter~0 2)} ~cond := #in~cond; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,853 INFO L290 TraceCheckUtils]: 49: Hoare triple {45382#(<= ~counter~0 2)} assume !(0 == ~cond); {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,853 INFO L290 TraceCheckUtils]: 50: Hoare triple {45382#(<= ~counter~0 2)} assume true; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,854 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {45382#(<= ~counter~0 2)} {45382#(<= ~counter~0 2)} #92#return; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,854 INFO L290 TraceCheckUtils]: 52: Hoare triple {45382#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45382#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:41,855 INFO L290 TraceCheckUtils]: 53: Hoare triple {45382#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,855 INFO L290 TraceCheckUtils]: 54: Hoare triple {45452#(<= ~counter~0 3)} assume !!(#t~post7 < 100);havoc #t~post7; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,855 INFO L272 TraceCheckUtils]: 55: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,856 INFO L290 TraceCheckUtils]: 56: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,856 INFO L290 TraceCheckUtils]: 57: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,856 INFO L290 TraceCheckUtils]: 58: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,857 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #86#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,857 INFO L272 TraceCheckUtils]: 60: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,857 INFO L290 TraceCheckUtils]: 61: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,858 INFO L290 TraceCheckUtils]: 62: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,858 INFO L290 TraceCheckUtils]: 63: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,858 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #88#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,859 INFO L272 TraceCheckUtils]: 65: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,859 INFO L290 TraceCheckUtils]: 66: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,859 INFO L290 TraceCheckUtils]: 67: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,860 INFO L290 TraceCheckUtils]: 68: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,860 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #90#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,861 INFO L272 TraceCheckUtils]: 70: Hoare triple {45452#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,861 INFO L290 TraceCheckUtils]: 71: Hoare triple {45452#(<= ~counter~0 3)} ~cond := #in~cond; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,861 INFO L290 TraceCheckUtils]: 72: Hoare triple {45452#(<= ~counter~0 3)} assume !(0 == ~cond); {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,862 INFO L290 TraceCheckUtils]: 73: Hoare triple {45452#(<= ~counter~0 3)} assume true; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,862 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {45452#(<= ~counter~0 3)} {45452#(<= ~counter~0 3)} #92#return; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,862 INFO L290 TraceCheckUtils]: 75: Hoare triple {45452#(<= ~counter~0 3)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45452#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:41,863 INFO L290 TraceCheckUtils]: 76: Hoare triple {45452#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,863 INFO L290 TraceCheckUtils]: 77: Hoare triple {45522#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,864 INFO L272 TraceCheckUtils]: 78: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,864 INFO L290 TraceCheckUtils]: 79: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,864 INFO L290 TraceCheckUtils]: 80: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,865 INFO L290 TraceCheckUtils]: 81: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,865 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #86#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,866 INFO L272 TraceCheckUtils]: 83: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,866 INFO L290 TraceCheckUtils]: 84: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,866 INFO L290 TraceCheckUtils]: 85: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,866 INFO L290 TraceCheckUtils]: 86: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,867 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #88#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,867 INFO L272 TraceCheckUtils]: 88: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,868 INFO L290 TraceCheckUtils]: 89: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,868 INFO L290 TraceCheckUtils]: 90: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,868 INFO L290 TraceCheckUtils]: 91: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,869 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #90#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,870 INFO L272 TraceCheckUtils]: 93: Hoare triple {45522#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,871 INFO L290 TraceCheckUtils]: 94: Hoare triple {45522#(<= ~counter~0 4)} ~cond := #in~cond; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,871 INFO L290 TraceCheckUtils]: 95: Hoare triple {45522#(<= ~counter~0 4)} assume !(0 == ~cond); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,871 INFO L290 TraceCheckUtils]: 96: Hoare triple {45522#(<= ~counter~0 4)} assume true; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,872 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {45522#(<= ~counter~0 4)} {45522#(<= ~counter~0 4)} #92#return; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,872 INFO L290 TraceCheckUtils]: 98: Hoare triple {45522#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,872 INFO L290 TraceCheckUtils]: 99: Hoare triple {45522#(<= ~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; {45522#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:41,873 INFO L290 TraceCheckUtils]: 100: Hoare triple {45522#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45595#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:41,873 INFO L290 TraceCheckUtils]: 101: Hoare triple {45595#(<= ~counter~0 5)} assume !!(#t~post6 < 100);havoc #t~post6; {45595#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:41,874 INFO L290 TraceCheckUtils]: 102: Hoare triple {45595#(<= ~counter~0 5)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45595#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:41,874 INFO L290 TraceCheckUtils]: 103: Hoare triple {45595#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45605#(<= |main_#t~post7| 5)} is VALID [2022-04-28 12:24:41,874 INFO L290 TraceCheckUtils]: 104: Hoare triple {45605#(<= |main_#t~post7| 5)} assume !(#t~post7 < 100);havoc #t~post7; {45286#false} is VALID [2022-04-28 12:24:41,874 INFO L290 TraceCheckUtils]: 105: Hoare triple {45286#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; {45286#false} is VALID [2022-04-28 12:24:41,874 INFO L290 TraceCheckUtils]: 106: Hoare triple {45286#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45286#false} is VALID [2022-04-28 12:24:41,874 INFO L290 TraceCheckUtils]: 107: Hoare triple {45286#false} assume !(#t~post6 < 100);havoc #t~post6; {45286#false} is VALID [2022-04-28 12:24:41,875 INFO L272 TraceCheckUtils]: 108: Hoare triple {45286#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {45286#false} is VALID [2022-04-28 12:24:41,875 INFO L290 TraceCheckUtils]: 109: Hoare triple {45286#false} ~cond := #in~cond; {45286#false} is VALID [2022-04-28 12:24:41,875 INFO L290 TraceCheckUtils]: 110: Hoare triple {45286#false} assume 0 == ~cond; {45286#false} is VALID [2022-04-28 12:24:41,875 INFO L290 TraceCheckUtils]: 111: Hoare triple {45286#false} assume !false; {45286#false} is VALID [2022-04-28 12:24:41,875 INFO L134 CoverageAnalysis]: Checked inductivity of 347 backedges. 29 proven. 222 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-28 12:24:41,875 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:24:42,299 INFO L290 TraceCheckUtils]: 111: Hoare triple {45286#false} assume !false; {45286#false} is VALID [2022-04-28 12:24:42,299 INFO L290 TraceCheckUtils]: 110: Hoare triple {45286#false} assume 0 == ~cond; {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L290 TraceCheckUtils]: 109: Hoare triple {45286#false} ~cond := #in~cond; {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L272 TraceCheckUtils]: 108: Hoare triple {45286#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L290 TraceCheckUtils]: 107: Hoare triple {45286#false} assume !(#t~post6 < 100);havoc #t~post6; {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L290 TraceCheckUtils]: 106: Hoare triple {45286#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L290 TraceCheckUtils]: 105: Hoare triple {45286#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; {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L290 TraceCheckUtils]: 104: Hoare triple {45651#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {45286#false} is VALID [2022-04-28 12:24:42,300 INFO L290 TraceCheckUtils]: 103: Hoare triple {45655#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45651#(< |main_#t~post7| 100)} is VALID [2022-04-28 12:24:42,301 INFO L290 TraceCheckUtils]: 102: Hoare triple {45655#(< ~counter~0 100)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45655#(< ~counter~0 100)} is VALID [2022-04-28 12:24:42,301 INFO L290 TraceCheckUtils]: 101: Hoare triple {45655#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {45655#(< ~counter~0 100)} is VALID [2022-04-28 12:24:42,302 INFO L290 TraceCheckUtils]: 100: Hoare triple {45665#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45655#(< ~counter~0 100)} is VALID [2022-04-28 12:24:42,302 INFO L290 TraceCheckUtils]: 99: Hoare triple {45665#(< ~counter~0 99)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,303 INFO L290 TraceCheckUtils]: 98: Hoare triple {45665#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,303 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {45285#true} {45665#(< ~counter~0 99)} #92#return; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,303 INFO L290 TraceCheckUtils]: 96: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,303 INFO L290 TraceCheckUtils]: 95: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,304 INFO L290 TraceCheckUtils]: 94: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,304 INFO L272 TraceCheckUtils]: 93: Hoare triple {45665#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,304 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {45285#true} {45665#(< ~counter~0 99)} #90#return; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,304 INFO L290 TraceCheckUtils]: 91: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,304 INFO L290 TraceCheckUtils]: 90: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,304 INFO L290 TraceCheckUtils]: 89: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,304 INFO L272 TraceCheckUtils]: 88: Hoare triple {45665#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,305 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {45285#true} {45665#(< ~counter~0 99)} #88#return; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,305 INFO L290 TraceCheckUtils]: 86: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,305 INFO L290 TraceCheckUtils]: 85: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,305 INFO L290 TraceCheckUtils]: 84: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,305 INFO L272 TraceCheckUtils]: 83: Hoare triple {45665#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,306 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {45285#true} {45665#(< ~counter~0 99)} #86#return; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,306 INFO L290 TraceCheckUtils]: 81: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,306 INFO L290 TraceCheckUtils]: 80: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,306 INFO L290 TraceCheckUtils]: 79: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,306 INFO L272 TraceCheckUtils]: 78: Hoare triple {45665#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,306 INFO L290 TraceCheckUtils]: 77: Hoare triple {45665#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,307 INFO L290 TraceCheckUtils]: 76: Hoare triple {45738#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45665#(< ~counter~0 99)} is VALID [2022-04-28 12:24:42,307 INFO L290 TraceCheckUtils]: 75: Hoare triple {45738#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,308 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {45285#true} {45738#(< ~counter~0 98)} #92#return; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,308 INFO L290 TraceCheckUtils]: 73: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,308 INFO L290 TraceCheckUtils]: 72: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,308 INFO L290 TraceCheckUtils]: 71: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,308 INFO L272 TraceCheckUtils]: 70: Hoare triple {45738#(< ~counter~0 98)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,314 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {45285#true} {45738#(< ~counter~0 98)} #90#return; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,314 INFO L290 TraceCheckUtils]: 68: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,314 INFO L290 TraceCheckUtils]: 67: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,314 INFO L290 TraceCheckUtils]: 66: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,314 INFO L272 TraceCheckUtils]: 65: Hoare triple {45738#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,315 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {45285#true} {45738#(< ~counter~0 98)} #88#return; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,315 INFO L290 TraceCheckUtils]: 63: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,315 INFO L290 TraceCheckUtils]: 62: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,315 INFO L290 TraceCheckUtils]: 61: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,315 INFO L272 TraceCheckUtils]: 60: Hoare triple {45738#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,316 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {45285#true} {45738#(< ~counter~0 98)} #86#return; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,316 INFO L290 TraceCheckUtils]: 58: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,316 INFO L290 TraceCheckUtils]: 57: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,316 INFO L290 TraceCheckUtils]: 56: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,316 INFO L272 TraceCheckUtils]: 55: Hoare triple {45738#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,316 INFO L290 TraceCheckUtils]: 54: Hoare triple {45738#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,317 INFO L290 TraceCheckUtils]: 53: Hoare triple {45808#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45738#(< ~counter~0 98)} is VALID [2022-04-28 12:24:42,317 INFO L290 TraceCheckUtils]: 52: Hoare triple {45808#(< ~counter~0 97)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,318 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {45285#true} {45808#(< ~counter~0 97)} #92#return; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,318 INFO L290 TraceCheckUtils]: 50: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,318 INFO L290 TraceCheckUtils]: 49: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,318 INFO L290 TraceCheckUtils]: 48: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,318 INFO L272 TraceCheckUtils]: 47: Hoare triple {45808#(< ~counter~0 97)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,319 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {45285#true} {45808#(< ~counter~0 97)} #90#return; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,319 INFO L290 TraceCheckUtils]: 45: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,319 INFO L290 TraceCheckUtils]: 44: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,319 INFO L290 TraceCheckUtils]: 43: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,319 INFO L272 TraceCheckUtils]: 42: Hoare triple {45808#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,319 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {45285#true} {45808#(< ~counter~0 97)} #88#return; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,320 INFO L290 TraceCheckUtils]: 40: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L290 TraceCheckUtils]: 39: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L290 TraceCheckUtils]: 38: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L272 TraceCheckUtils]: 37: Hoare triple {45808#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {45285#true} {45808#(< ~counter~0 97)} #86#return; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,320 INFO L290 TraceCheckUtils]: 35: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L290 TraceCheckUtils]: 34: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L290 TraceCheckUtils]: 33: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,320 INFO L272 TraceCheckUtils]: 32: Hoare triple {45808#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,321 INFO L290 TraceCheckUtils]: 31: Hoare triple {45808#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,321 INFO L290 TraceCheckUtils]: 30: Hoare triple {45878#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45808#(< ~counter~0 97)} is VALID [2022-04-28 12:24:42,322 INFO L290 TraceCheckUtils]: 29: Hoare triple {45878#(< ~counter~0 96)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {45878#(< ~counter~0 96)} is VALID [2022-04-28 12:24:42,322 INFO L290 TraceCheckUtils]: 28: Hoare triple {45878#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {45878#(< ~counter~0 96)} is VALID [2022-04-28 12:24:42,323 INFO L290 TraceCheckUtils]: 27: Hoare triple {45888#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45878#(< ~counter~0 96)} is VALID [2022-04-28 12:24:42,323 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {45285#true} {45888#(< ~counter~0 95)} #84#return; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,323 INFO L290 TraceCheckUtils]: 25: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,323 INFO L290 TraceCheckUtils]: 24: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,323 INFO L290 TraceCheckUtils]: 23: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,323 INFO L272 TraceCheckUtils]: 22: Hoare triple {45888#(< ~counter~0 95)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,324 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {45285#true} {45888#(< ~counter~0 95)} #82#return; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,324 INFO L290 TraceCheckUtils]: 20: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,324 INFO L290 TraceCheckUtils]: 19: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,324 INFO L290 TraceCheckUtils]: 18: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,324 INFO L272 TraceCheckUtils]: 17: Hoare triple {45888#(< ~counter~0 95)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,324 INFO L290 TraceCheckUtils]: 16: Hoare triple {45888#(< ~counter~0 95)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,325 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45285#true} {45888#(< ~counter~0 95)} #80#return; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,325 INFO L290 TraceCheckUtils]: 14: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,325 INFO L290 TraceCheckUtils]: 13: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,325 INFO L290 TraceCheckUtils]: 12: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,325 INFO L272 TraceCheckUtils]: 11: Hoare triple {45888#(< ~counter~0 95)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,327 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45285#true} {45888#(< ~counter~0 95)} #78#return; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,327 INFO L290 TraceCheckUtils]: 9: Hoare triple {45285#true} assume true; {45285#true} is VALID [2022-04-28 12:24:42,327 INFO L290 TraceCheckUtils]: 8: Hoare triple {45285#true} assume !(0 == ~cond); {45285#true} is VALID [2022-04-28 12:24:42,327 INFO L290 TraceCheckUtils]: 7: Hoare triple {45285#true} ~cond := #in~cond; {45285#true} is VALID [2022-04-28 12:24:42,327 INFO L272 TraceCheckUtils]: 6: Hoare triple {45888#(< ~counter~0 95)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45285#true} is VALID [2022-04-28 12:24:42,327 INFO L290 TraceCheckUtils]: 5: Hoare triple {45888#(< ~counter~0 95)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,328 INFO L272 TraceCheckUtils]: 4: Hoare triple {45888#(< ~counter~0 95)} call #t~ret8 := main(); {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,328 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45888#(< ~counter~0 95)} {45285#true} #98#return; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,328 INFO L290 TraceCheckUtils]: 2: Hoare triple {45888#(< ~counter~0 95)} assume true; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {45285#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; {45888#(< ~counter~0 95)} is VALID [2022-04-28 12:24:42,329 INFO L272 TraceCheckUtils]: 0: Hoare triple {45285#true} call ULTIMATE.init(); {45285#true} is VALID [2022-04-28 12:24:42,329 INFO L134 CoverageAnalysis]: Checked inductivity of 347 backedges. 29 proven. 30 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-28 12:24:42,329 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:24:42,329 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1855644480] [2022-04-28 12:24:42,329 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:24:42,329 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1041962674] [2022-04-28 12:24:42,329 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1041962674] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:24:42,329 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:24:42,330 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 12:24:42,330 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:24:42,330 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1671275458] [2022-04-28 12:24:42,330 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1671275458] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:24:42,330 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:24:42,330 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 12:24:42,330 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1951380504] [2022-04-28 12:24:42,330 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:24:42,330 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 112 [2022-04-28 12:24:42,331 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:24:42,331 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:42,397 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:24:42,397 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 12:24:42,397 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:42,398 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 12:24:42,398 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 12:24:42,398 INFO L87 Difference]: Start difference. First operand 470 states and 614 transitions. Second operand has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:43,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:43,802 INFO L93 Difference]: Finished difference Result 644 states and 881 transitions. [2022-04-28 12:24:43,802 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:24:43,802 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 112 [2022-04-28 12:24:43,802 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:24:43,802 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:43,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 152 transitions. [2022-04-28 12:24:43,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:43,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 152 transitions. [2022-04-28 12:24:43,807 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 152 transitions. [2022-04-28 12:24:43,935 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 152 edges. 152 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:43,946 INFO L225 Difference]: With dead ends: 644 [2022-04-28 12:24:43,946 INFO L226 Difference]: Without dead ends: 474 [2022-04-28 12:24:43,947 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 227 GetRequests, 209 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=152, Invalid=228, Unknown=0, NotChecked=0, Total=380 [2022-04-28 12:24:43,947 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 47 mSDsluCounter, 155 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 46 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 46 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:24:43,948 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 213 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [46 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:24:43,948 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 474 states. [2022-04-28 12:24:44,967 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 474 to 474. [2022-04-28 12:24:44,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:24:44,968 INFO L82 GeneralOperation]: Start isEquivalent. First operand 474 states. Second operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:44,968 INFO L74 IsIncluded]: Start isIncluded. First operand 474 states. Second operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:44,969 INFO L87 Difference]: Start difference. First operand 474 states. Second operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:44,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:44,981 INFO L93 Difference]: Finished difference Result 474 states and 616 transitions. [2022-04-28 12:24:44,981 INFO L276 IsEmpty]: Start isEmpty. Operand 474 states and 616 transitions. [2022-04-28 12:24:44,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:44,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:44,983 INFO L74 IsIncluded]: Start isIncluded. First operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 474 states. [2022-04-28 12:24:44,983 INFO L87 Difference]: Start difference. First operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) Second operand 474 states. [2022-04-28 12:24:44,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:44,996 INFO L93 Difference]: Finished difference Result 474 states and 616 transitions. [2022-04-28 12:24:44,996 INFO L276 IsEmpty]: Start isEmpty. Operand 474 states and 616 transitions. [2022-04-28 12:24:44,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:44,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:44,997 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:24:44,997 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:24:44,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 474 states, 305 states have (on average 1.2163934426229508) internal successors, (371), 310 states have internal predecessors, (371), 124 states have call successors, (124), 45 states have call predecessors, (124), 44 states have return successors, (121), 118 states have call predecessors, (121), 121 states have call successors, (121) [2022-04-28 12:24:45,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 474 states to 474 states and 616 transitions. [2022-04-28 12:24:45,011 INFO L78 Accepts]: Start accepts. Automaton has 474 states and 616 transitions. Word has length 112 [2022-04-28 12:24:45,011 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:24:45,011 INFO L495 AbstractCegarLoop]: Abstraction has 474 states and 616 transitions. [2022-04-28 12:24:45,011 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.444444444444445) internal successors, (40), 8 states have internal predecessors, (40), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:45,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 474 states and 616 transitions. [2022-04-28 12:24:46,034 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 616 edges. 616 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:46,034 INFO L276 IsEmpty]: Start isEmpty. Operand 474 states and 616 transitions. [2022-04-28 12:24:46,035 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 117 [2022-04-28 12:24:46,035 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:24:46,035 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:24:46,051 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:24:46,236 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:24:46,236 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:24:46,236 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:24:46,236 INFO L85 PathProgramCache]: Analyzing trace with hash 1546024104, now seen corresponding path program 5 times [2022-04-28 12:24:46,237 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:46,237 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1207884188] [2022-04-28 12:24:46,237 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:24:46,237 INFO L85 PathProgramCache]: Analyzing trace with hash 1546024104, now seen corresponding path program 6 times [2022-04-28 12:24:46,237 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:24:46,237 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1581666995] [2022-04-28 12:24:46,237 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:24:46,238 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:24:46,256 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:24:46,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [275915779] [2022-04-28 12:24:46,256 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:24:46,256 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:24:46,256 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:24:46,257 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:24:46,258 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:24:46,342 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 12:24:46,342 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:24:46,343 INFO L263 TraceCheckSpWp]: Trace formula consists of 332 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 12:24:46,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:24:46,364 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:24:46,821 INFO L272 TraceCheckUtils]: 0: Hoare triple {49164#true} call ULTIMATE.init(); {49164#true} is VALID [2022-04-28 12:24:46,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {49164#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; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,822 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49172#(<= ~counter~0 0)} {49164#true} #98#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,822 INFO L272 TraceCheckUtils]: 4: Hoare triple {49172#(<= ~counter~0 0)} call #t~ret8 := main(); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,823 INFO L290 TraceCheckUtils]: 5: Hoare triple {49172#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,823 INFO L272 TraceCheckUtils]: 6: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,823 INFO L290 TraceCheckUtils]: 7: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,824 INFO L290 TraceCheckUtils]: 8: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,824 INFO L290 TraceCheckUtils]: 9: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,824 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #78#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,825 INFO L272 TraceCheckUtils]: 11: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,825 INFO L290 TraceCheckUtils]: 12: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,825 INFO L290 TraceCheckUtils]: 13: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,826 INFO L290 TraceCheckUtils]: 14: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,826 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #80#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,826 INFO L290 TraceCheckUtils]: 16: Hoare triple {49172#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,827 INFO L272 TraceCheckUtils]: 17: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,827 INFO L290 TraceCheckUtils]: 18: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,827 INFO L290 TraceCheckUtils]: 19: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,827 INFO L290 TraceCheckUtils]: 20: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,828 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #82#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,828 INFO L272 TraceCheckUtils]: 22: Hoare triple {49172#(<= ~counter~0 0)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,828 INFO L290 TraceCheckUtils]: 23: Hoare triple {49172#(<= ~counter~0 0)} ~cond := #in~cond; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,829 INFO L290 TraceCheckUtils]: 24: Hoare triple {49172#(<= ~counter~0 0)} assume !(0 == ~cond); {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,829 INFO L290 TraceCheckUtils]: 25: Hoare triple {49172#(<= ~counter~0 0)} assume true; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,829 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {49172#(<= ~counter~0 0)} {49172#(<= ~counter~0 0)} #84#return; {49172#(<= ~counter~0 0)} is VALID [2022-04-28 12:24:46,831 INFO L290 TraceCheckUtils]: 27: Hoare triple {49172#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49251#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:46,831 INFO L290 TraceCheckUtils]: 28: Hoare triple {49251#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {49251#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:46,831 INFO L290 TraceCheckUtils]: 29: Hoare triple {49251#(<= ~counter~0 1)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49251#(<= ~counter~0 1)} is VALID [2022-04-28 12:24:46,832 INFO L290 TraceCheckUtils]: 30: Hoare triple {49251#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,832 INFO L290 TraceCheckUtils]: 31: Hoare triple {49261#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,833 INFO L272 TraceCheckUtils]: 32: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,833 INFO L290 TraceCheckUtils]: 33: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,833 INFO L290 TraceCheckUtils]: 34: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,833 INFO L290 TraceCheckUtils]: 35: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,834 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #86#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,834 INFO L272 TraceCheckUtils]: 37: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,835 INFO L290 TraceCheckUtils]: 38: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,835 INFO L290 TraceCheckUtils]: 39: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,835 INFO L290 TraceCheckUtils]: 40: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,836 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #88#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,836 INFO L272 TraceCheckUtils]: 42: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,837 INFO L290 TraceCheckUtils]: 43: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,837 INFO L290 TraceCheckUtils]: 44: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,837 INFO L290 TraceCheckUtils]: 45: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,838 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #90#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,838 INFO L272 TraceCheckUtils]: 47: Hoare triple {49261#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,838 INFO L290 TraceCheckUtils]: 48: Hoare triple {49261#(<= ~counter~0 2)} ~cond := #in~cond; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,839 INFO L290 TraceCheckUtils]: 49: Hoare triple {49261#(<= ~counter~0 2)} assume !(0 == ~cond); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,839 INFO L290 TraceCheckUtils]: 50: Hoare triple {49261#(<= ~counter~0 2)} assume true; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,840 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49261#(<= ~counter~0 2)} {49261#(<= ~counter~0 2)} #92#return; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,840 INFO L290 TraceCheckUtils]: 52: Hoare triple {49261#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,840 INFO L290 TraceCheckUtils]: 53: Hoare triple {49261#(<= ~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; {49261#(<= ~counter~0 2)} is VALID [2022-04-28 12:24:46,841 INFO L290 TraceCheckUtils]: 54: Hoare triple {49261#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49334#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:46,841 INFO L290 TraceCheckUtils]: 55: Hoare triple {49334#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {49334#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:46,841 INFO L290 TraceCheckUtils]: 56: Hoare triple {49334#(<= ~counter~0 3)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49334#(<= ~counter~0 3)} is VALID [2022-04-28 12:24:46,842 INFO L290 TraceCheckUtils]: 57: Hoare triple {49334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,842 INFO L290 TraceCheckUtils]: 58: Hoare triple {49344#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,843 INFO L272 TraceCheckUtils]: 59: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,843 INFO L290 TraceCheckUtils]: 60: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,843 INFO L290 TraceCheckUtils]: 61: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,843 INFO L290 TraceCheckUtils]: 62: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,844 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #86#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,844 INFO L272 TraceCheckUtils]: 64: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,845 INFO L290 TraceCheckUtils]: 65: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,845 INFO L290 TraceCheckUtils]: 66: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,845 INFO L290 TraceCheckUtils]: 67: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,846 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #88#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,846 INFO L272 TraceCheckUtils]: 69: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,847 INFO L290 TraceCheckUtils]: 70: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,847 INFO L290 TraceCheckUtils]: 71: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,847 INFO L290 TraceCheckUtils]: 72: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,848 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #90#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,848 INFO L272 TraceCheckUtils]: 74: Hoare triple {49344#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,848 INFO L290 TraceCheckUtils]: 75: Hoare triple {49344#(<= ~counter~0 4)} ~cond := #in~cond; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,849 INFO L290 TraceCheckUtils]: 76: Hoare triple {49344#(<= ~counter~0 4)} assume !(0 == ~cond); {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,849 INFO L290 TraceCheckUtils]: 77: Hoare triple {49344#(<= ~counter~0 4)} assume true; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,850 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {49344#(<= ~counter~0 4)} {49344#(<= ~counter~0 4)} #92#return; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,850 INFO L290 TraceCheckUtils]: 79: Hoare triple {49344#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {49344#(<= ~counter~0 4)} is VALID [2022-04-28 12:24:46,851 INFO L290 TraceCheckUtils]: 80: Hoare triple {49344#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,851 INFO L290 TraceCheckUtils]: 81: Hoare triple {49414#(<= ~counter~0 5)} assume !!(#t~post7 < 100);havoc #t~post7; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,851 INFO L272 TraceCheckUtils]: 82: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,852 INFO L290 TraceCheckUtils]: 83: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,852 INFO L290 TraceCheckUtils]: 84: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,852 INFO L290 TraceCheckUtils]: 85: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,853 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #86#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,853 INFO L272 TraceCheckUtils]: 87: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,853 INFO L290 TraceCheckUtils]: 88: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,854 INFO L290 TraceCheckUtils]: 89: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,854 INFO L290 TraceCheckUtils]: 90: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,854 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #88#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,855 INFO L272 TraceCheckUtils]: 92: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,855 INFO L290 TraceCheckUtils]: 93: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,855 INFO L290 TraceCheckUtils]: 94: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,856 INFO L290 TraceCheckUtils]: 95: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,856 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #90#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,857 INFO L272 TraceCheckUtils]: 97: Hoare triple {49414#(<= ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,857 INFO L290 TraceCheckUtils]: 98: Hoare triple {49414#(<= ~counter~0 5)} ~cond := #in~cond; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,857 INFO L290 TraceCheckUtils]: 99: Hoare triple {49414#(<= ~counter~0 5)} assume !(0 == ~cond); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,858 INFO L290 TraceCheckUtils]: 100: Hoare triple {49414#(<= ~counter~0 5)} assume true; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,858 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {49414#(<= ~counter~0 5)} {49414#(<= ~counter~0 5)} #92#return; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,858 INFO L290 TraceCheckUtils]: 102: Hoare triple {49414#(<= ~counter~0 5)} assume !(~c~0 >= ~b~0); {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,859 INFO L290 TraceCheckUtils]: 103: Hoare triple {49414#(<= ~counter~0 5)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49414#(<= ~counter~0 5)} is VALID [2022-04-28 12:24:46,859 INFO L290 TraceCheckUtils]: 104: Hoare triple {49414#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49487#(<= ~counter~0 6)} is VALID [2022-04-28 12:24:46,860 INFO L290 TraceCheckUtils]: 105: Hoare triple {49487#(<= ~counter~0 6)} assume !!(#t~post6 < 100);havoc #t~post6; {49487#(<= ~counter~0 6)} is VALID [2022-04-28 12:24:46,860 INFO L290 TraceCheckUtils]: 106: Hoare triple {49487#(<= ~counter~0 6)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49487#(<= ~counter~0 6)} is VALID [2022-04-28 12:24:46,860 INFO L290 TraceCheckUtils]: 107: Hoare triple {49487#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49497#(<= |main_#t~post7| 6)} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 108: Hoare triple {49497#(<= |main_#t~post7| 6)} assume !(#t~post7 < 100);havoc #t~post7; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 109: Hoare triple {49165#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; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 110: Hoare triple {49165#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 111: Hoare triple {49165#false} assume !(#t~post6 < 100);havoc #t~post6; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L272 TraceCheckUtils]: 112: Hoare triple {49165#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 113: Hoare triple {49165#false} ~cond := #in~cond; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 114: Hoare triple {49165#false} assume 0 == ~cond; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L290 TraceCheckUtils]: 115: Hoare triple {49165#false} assume !false; {49165#false} is VALID [2022-04-28 12:24:46,861 INFO L134 CoverageAnalysis]: Checked inductivity of 357 backedges. 32 proven. 229 refuted. 0 times theorem prover too weak. 96 trivial. 0 not checked. [2022-04-28 12:24:46,862 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:24:47,350 INFO L290 TraceCheckUtils]: 115: Hoare triple {49165#false} assume !false; {49165#false} is VALID [2022-04-28 12:24:47,350 INFO L290 TraceCheckUtils]: 114: Hoare triple {49165#false} assume 0 == ~cond; {49165#false} is VALID [2022-04-28 12:24:47,350 INFO L290 TraceCheckUtils]: 113: Hoare triple {49165#false} ~cond := #in~cond; {49165#false} is VALID [2022-04-28 12:24:47,350 INFO L272 TraceCheckUtils]: 112: Hoare triple {49165#false} call __VERIFIER_assert((if 0 == ~q~0 * ~x~0 + ~s~0 * ~y~0 then 1 else 0)); {49165#false} is VALID [2022-04-28 12:24:47,350 INFO L290 TraceCheckUtils]: 111: Hoare triple {49165#false} assume !(#t~post6 < 100);havoc #t~post6; {49165#false} is VALID [2022-04-28 12:24:47,350 INFO L290 TraceCheckUtils]: 110: Hoare triple {49165#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49165#false} is VALID [2022-04-28 12:24:47,350 INFO L290 TraceCheckUtils]: 109: Hoare triple {49165#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; {49165#false} is VALID [2022-04-28 12:24:47,351 INFO L290 TraceCheckUtils]: 108: Hoare triple {49543#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {49165#false} is VALID [2022-04-28 12:24:47,351 INFO L290 TraceCheckUtils]: 107: Hoare triple {49547#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49543#(< |main_#t~post7| 100)} is VALID [2022-04-28 12:24:47,351 INFO L290 TraceCheckUtils]: 106: Hoare triple {49547#(< ~counter~0 100)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49547#(< ~counter~0 100)} is VALID [2022-04-28 12:24:47,352 INFO L290 TraceCheckUtils]: 105: Hoare triple {49547#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {49547#(< ~counter~0 100)} is VALID [2022-04-28 12:24:47,353 INFO L290 TraceCheckUtils]: 104: Hoare triple {49557#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49547#(< ~counter~0 100)} is VALID [2022-04-28 12:24:47,353 INFO L290 TraceCheckUtils]: 103: Hoare triple {49557#(< ~counter~0 99)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,353 INFO L290 TraceCheckUtils]: 102: Hoare triple {49557#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,354 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {49164#true} {49557#(< ~counter~0 99)} #92#return; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,354 INFO L290 TraceCheckUtils]: 100: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,354 INFO L290 TraceCheckUtils]: 99: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,354 INFO L290 TraceCheckUtils]: 98: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,354 INFO L272 TraceCheckUtils]: 97: Hoare triple {49557#(< ~counter~0 99)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,355 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {49164#true} {49557#(< ~counter~0 99)} #90#return; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,355 INFO L290 TraceCheckUtils]: 95: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,355 INFO L290 TraceCheckUtils]: 94: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,355 INFO L290 TraceCheckUtils]: 93: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,355 INFO L272 TraceCheckUtils]: 92: Hoare triple {49557#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,356 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {49164#true} {49557#(< ~counter~0 99)} #88#return; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,356 INFO L290 TraceCheckUtils]: 90: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,356 INFO L290 TraceCheckUtils]: 89: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,356 INFO L290 TraceCheckUtils]: 88: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,356 INFO L272 TraceCheckUtils]: 87: Hoare triple {49557#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,357 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {49164#true} {49557#(< ~counter~0 99)} #86#return; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,357 INFO L290 TraceCheckUtils]: 85: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,357 INFO L290 TraceCheckUtils]: 84: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,357 INFO L290 TraceCheckUtils]: 83: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,357 INFO L272 TraceCheckUtils]: 82: Hoare triple {49557#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,357 INFO L290 TraceCheckUtils]: 81: Hoare triple {49557#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,358 INFO L290 TraceCheckUtils]: 80: Hoare triple {49630#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49557#(< ~counter~0 99)} is VALID [2022-04-28 12:24:47,358 INFO L290 TraceCheckUtils]: 79: Hoare triple {49630#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,359 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {49164#true} {49630#(< ~counter~0 98)} #92#return; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,359 INFO L290 TraceCheckUtils]: 77: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,359 INFO L290 TraceCheckUtils]: 76: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,359 INFO L290 TraceCheckUtils]: 75: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,359 INFO L272 TraceCheckUtils]: 74: Hoare triple {49630#(< ~counter~0 98)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,359 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {49164#true} {49630#(< ~counter~0 98)} #90#return; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,360 INFO L290 TraceCheckUtils]: 72: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,360 INFO L290 TraceCheckUtils]: 71: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,360 INFO L290 TraceCheckUtils]: 70: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,360 INFO L272 TraceCheckUtils]: 69: Hoare triple {49630#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,360 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {49164#true} {49630#(< ~counter~0 98)} #88#return; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,361 INFO L290 TraceCheckUtils]: 67: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,361 INFO L290 TraceCheckUtils]: 66: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,361 INFO L290 TraceCheckUtils]: 65: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,361 INFO L272 TraceCheckUtils]: 64: Hoare triple {49630#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,361 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {49164#true} {49630#(< ~counter~0 98)} #86#return; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,361 INFO L290 TraceCheckUtils]: 62: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,361 INFO L290 TraceCheckUtils]: 61: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,361 INFO L290 TraceCheckUtils]: 60: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,362 INFO L272 TraceCheckUtils]: 59: Hoare triple {49630#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,362 INFO L290 TraceCheckUtils]: 58: Hoare triple {49630#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,362 INFO L290 TraceCheckUtils]: 57: Hoare triple {49700#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49630#(< ~counter~0 98)} is VALID [2022-04-28 12:24:47,363 INFO L290 TraceCheckUtils]: 56: Hoare triple {49700#(< ~counter~0 97)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49700#(< ~counter~0 97)} is VALID [2022-04-28 12:24:47,363 INFO L290 TraceCheckUtils]: 55: Hoare triple {49700#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {49700#(< ~counter~0 97)} is VALID [2022-04-28 12:24:47,364 INFO L290 TraceCheckUtils]: 54: Hoare triple {49710#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49700#(< ~counter~0 97)} is VALID [2022-04-28 12:24:47,364 INFO L290 TraceCheckUtils]: 53: Hoare triple {49710#(< ~counter~0 96)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,364 INFO L290 TraceCheckUtils]: 52: Hoare triple {49710#(< ~counter~0 96)} assume !(~c~0 >= ~b~0); {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,365 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49164#true} {49710#(< ~counter~0 96)} #92#return; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,365 INFO L290 TraceCheckUtils]: 50: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,365 INFO L290 TraceCheckUtils]: 49: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,365 INFO L290 TraceCheckUtils]: 48: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,365 INFO L272 TraceCheckUtils]: 47: Hoare triple {49710#(< ~counter~0 96)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,366 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49164#true} {49710#(< ~counter~0 96)} #90#return; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,366 INFO L290 TraceCheckUtils]: 45: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,366 INFO L290 TraceCheckUtils]: 44: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,366 INFO L290 TraceCheckUtils]: 43: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,366 INFO L272 TraceCheckUtils]: 42: Hoare triple {49710#(< ~counter~0 96)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,366 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49164#true} {49710#(< ~counter~0 96)} #88#return; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,367 INFO L290 TraceCheckUtils]: 40: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,367 INFO L290 TraceCheckUtils]: 39: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,367 INFO L290 TraceCheckUtils]: 38: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,367 INFO L272 TraceCheckUtils]: 37: Hoare triple {49710#(< ~counter~0 96)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,367 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49164#true} {49710#(< ~counter~0 96)} #86#return; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,367 INFO L290 TraceCheckUtils]: 34: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,367 INFO L290 TraceCheckUtils]: 33: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,368 INFO L272 TraceCheckUtils]: 32: Hoare triple {49710#(< ~counter~0 96)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,368 INFO L290 TraceCheckUtils]: 31: Hoare triple {49710#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,369 INFO L290 TraceCheckUtils]: 30: Hoare triple {49783#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49710#(< ~counter~0 96)} is VALID [2022-04-28 12:24:47,369 INFO L290 TraceCheckUtils]: 29: Hoare triple {49783#(< ~counter~0 95)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {49783#(< ~counter~0 95)} is VALID [2022-04-28 12:24:47,369 INFO L290 TraceCheckUtils]: 28: Hoare triple {49783#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {49783#(< ~counter~0 95)} is VALID [2022-04-28 12:24:47,370 INFO L290 TraceCheckUtils]: 27: Hoare triple {49793#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49783#(< ~counter~0 95)} is VALID [2022-04-28 12:24:47,370 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {49164#true} {49793#(< ~counter~0 94)} #84#return; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,370 INFO L290 TraceCheckUtils]: 25: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,370 INFO L290 TraceCheckUtils]: 24: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,370 INFO L290 TraceCheckUtils]: 23: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,370 INFO L272 TraceCheckUtils]: 22: Hoare triple {49793#(< ~counter~0 94)} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,371 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {49164#true} {49793#(< ~counter~0 94)} #82#return; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,371 INFO L290 TraceCheckUtils]: 20: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,371 INFO L290 TraceCheckUtils]: 19: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,371 INFO L290 TraceCheckUtils]: 18: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,371 INFO L272 TraceCheckUtils]: 17: Hoare triple {49793#(< ~counter~0 94)} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,371 INFO L290 TraceCheckUtils]: 16: Hoare triple {49793#(< ~counter~0 94)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,372 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49164#true} {49793#(< ~counter~0 94)} #80#return; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,372 INFO L290 TraceCheckUtils]: 14: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,372 INFO L290 TraceCheckUtils]: 12: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,372 INFO L272 TraceCheckUtils]: 11: Hoare triple {49793#(< ~counter~0 94)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,372 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49164#true} {49793#(< ~counter~0 94)} #78#return; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,373 INFO L290 TraceCheckUtils]: 9: Hoare triple {49164#true} assume true; {49164#true} is VALID [2022-04-28 12:24:47,373 INFO L290 TraceCheckUtils]: 8: Hoare triple {49164#true} assume !(0 == ~cond); {49164#true} is VALID [2022-04-28 12:24:47,373 INFO L290 TraceCheckUtils]: 7: Hoare triple {49164#true} ~cond := #in~cond; {49164#true} is VALID [2022-04-28 12:24:47,373 INFO L272 TraceCheckUtils]: 6: Hoare triple {49793#(< ~counter~0 94)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49164#true} is VALID [2022-04-28 12:24:47,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {49793#(< ~counter~0 94)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {49793#(< ~counter~0 94)} call #t~ret8 := main(); {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,374 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49793#(< ~counter~0 94)} {49164#true} #98#return; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {49793#(< ~counter~0 94)} assume true; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {49164#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; {49793#(< ~counter~0 94)} is VALID [2022-04-28 12:24:47,374 INFO L272 TraceCheckUtils]: 0: Hoare triple {49164#true} call ULTIMATE.init(); {49164#true} is VALID [2022-04-28 12:24:47,375 INFO L134 CoverageAnalysis]: Checked inductivity of 357 backedges. 32 proven. 37 refuted. 0 times theorem prover too weak. 288 trivial. 0 not checked. [2022-04-28 12:24:47,375 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:24:47,375 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1581666995] [2022-04-28 12:24:47,375 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:24:47,375 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [275915779] [2022-04-28 12:24:47,375 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [275915779] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:24:47,375 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:24:47,375 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 12:24:47,376 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:24:47,376 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1207884188] [2022-04-28 12:24:47,376 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1207884188] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:24:47,376 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:24:47,376 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 12:24:47,376 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [777140687] [2022-04-28 12:24:47,376 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:24:47,376 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 116 [2022-04-28 12:24:47,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:24:47,376 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:47,443 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:47,443 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 12:24:47,444 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:47,444 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 12:24:47,444 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 12:24:47,444 INFO L87 Difference]: Start difference. First operand 474 states and 616 transitions. Second operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:49,067 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:49,067 INFO L93 Difference]: Finished difference Result 731 states and 966 transitions. [2022-04-28 12:24:49,067 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 12:24:49,067 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) Word has length 116 [2022-04-28 12:24:49,067 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:24:49,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:49,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 175 transitions. [2022-04-28 12:24:49,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:49,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 175 transitions. [2022-04-28 12:24:49,070 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 175 transitions. [2022-04-28 12:24:49,228 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:49,249 INFO L225 Difference]: With dead ends: 731 [2022-04-28 12:24:49,249 INFO L226 Difference]: Without dead ends: 561 [2022-04-28 12:24:49,263 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 236 GetRequests, 215 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=205, Invalid=301, Unknown=0, NotChecked=0, Total=506 [2022-04-28 12:24:49,264 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 76 mSDsluCounter, 158 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 52 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 222 SdHoareTripleChecker+Invalid, 144 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 12:24:49,264 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 222 Invalid, 144 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 12:24:49,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 561 states. [2022-04-28 12:24:50,470 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 561 to 553. [2022-04-28 12:24:50,470 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:24:50,471 INFO L82 GeneralOperation]: Start isEquivalent. First operand 561 states. Second operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-28 12:24:50,471 INFO L74 IsIncluded]: Start isIncluded. First operand 561 states. Second operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-28 12:24:50,472 INFO L87 Difference]: Start difference. First operand 561 states. Second operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-28 12:24:50,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:50,487 INFO L93 Difference]: Finished difference Result 561 states and 699 transitions. [2022-04-28 12:24:50,487 INFO L276 IsEmpty]: Start isEmpty. Operand 561 states and 699 transitions. [2022-04-28 12:24:50,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:50,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:50,489 INFO L74 IsIncluded]: Start isIncluded. First operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) Second operand 561 states. [2022-04-28 12:24:50,489 INFO L87 Difference]: Start difference. First operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) Second operand 561 states. [2022-04-28 12:24:50,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:24:50,507 INFO L93 Difference]: Finished difference Result 561 states and 699 transitions. [2022-04-28 12:24:50,507 INFO L276 IsEmpty]: Start isEmpty. Operand 561 states and 699 transitions. [2022-04-28 12:24:50,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:24:50,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:24:50,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:24:50,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:24:50,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 553 states, 361 states have (on average 1.1911357340720221) internal successors, (430), 367 states have internal predecessors, (430), 133 states have call successors, (133), 59 states have call predecessors, (133), 58 states have return successors, (129), 126 states have call predecessors, (129), 129 states have call successors, (129) [2022-04-28 12:24:50,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 553 states to 553 states and 692 transitions. [2022-04-28 12:24:50,542 INFO L78 Accepts]: Start accepts. Automaton has 553 states and 692 transitions. Word has length 116 [2022-04-28 12:24:50,542 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:24:50,542 INFO L495 AbstractCegarLoop]: Abstraction has 553 states and 692 transitions. [2022-04-28 12:24:50,543 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.4) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (19), 6 states have call predecessors, (19), 4 states have return successors, (17), 4 states have call predecessors, (17), 5 states have call successors, (17) [2022-04-28 12:24:50,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 553 states and 692 transitions. [2022-04-28 12:24:51,748 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 692 edges. 692 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:24:51,748 INFO L276 IsEmpty]: Start isEmpty. Operand 553 states and 692 transitions. [2022-04-28 12:24:51,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 119 [2022-04-28 12:24:51,749 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:24:51,749 INFO L195 NwaCegarLoop]: trace histogram [14, 13, 13, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:24:51,766 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:24:51,949 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:24:51,950 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:24:51,950 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:24:51,950 INFO L85 PathProgramCache]: Analyzing trace with hash 1978671899, now seen corresponding path program 3 times [2022-04-28 12:24:51,950 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:24:51,950 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1552289808] [2022-04-28 12:24:51,950 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:24:51,951 INFO L85 PathProgramCache]: Analyzing trace with hash 1978671899, now seen corresponding path program 4 times [2022-04-28 12:24:51,951 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:24:51,951 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2031041385] [2022-04-28 12:24:51,951 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:24:51,951 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:24:51,960 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:24:51,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1207710497] [2022-04-28 12:24:51,961 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:24:51,961 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:24:51,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:24:51,962 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:24:51,962 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:24:52,027 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:24:52,028 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:24:52,029 INFO L263 TraceCheckSpWp]: Trace formula consists of 274 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-28 12:24:52,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:24:52,054 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:24:53,280 INFO L272 TraceCheckUtils]: 0: Hoare triple {53577#true} call ULTIMATE.init(); {53577#true} is VALID [2022-04-28 12:24:53,280 INFO L290 TraceCheckUtils]: 1: Hoare triple {53577#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; {53577#true} is VALID [2022-04-28 12:24:53,280 INFO L290 TraceCheckUtils]: 2: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,280 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53577#true} {53577#true} #98#return; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L272 TraceCheckUtils]: 4: Hoare triple {53577#true} call #t~ret8 := main(); {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 5: Hoare triple {53577#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L272 TraceCheckUtils]: 6: Hoare triple {53577#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 7: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 8: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 9: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {53577#true} {53577#true} #78#return; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L272 TraceCheckUtils]: 11: Hoare triple {53577#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 12: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 13: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L290 TraceCheckUtils]: 14: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,281 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {53577#true} {53577#true} #80#return; {53577#true} is VALID [2022-04-28 12:24:53,282 INFO L290 TraceCheckUtils]: 16: Hoare triple {53577#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,282 INFO L272 TraceCheckUtils]: 17: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,282 INFO L290 TraceCheckUtils]: 18: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,282 INFO L290 TraceCheckUtils]: 19: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,282 INFO L290 TraceCheckUtils]: 20: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,282 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {53577#true} {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} #82#return; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,283 INFO L272 TraceCheckUtils]: 22: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,283 INFO L290 TraceCheckUtils]: 23: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,283 INFO L290 TraceCheckUtils]: 24: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,283 INFO L290 TraceCheckUtils]: 25: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,283 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {53577#true} {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} #84#return; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,284 INFO L290 TraceCheckUtils]: 27: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,284 INFO L290 TraceCheckUtils]: 28: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !!(#t~post6 < 100);havoc #t~post6; {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {53630#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,285 INFO L290 TraceCheckUtils]: 30: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,285 INFO L272 TraceCheckUtils]: 32: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,285 INFO L290 TraceCheckUtils]: 33: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,285 INFO L290 TraceCheckUtils]: 34: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,285 INFO L290 TraceCheckUtils]: 35: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,286 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #86#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,286 INFO L272 TraceCheckUtils]: 37: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,286 INFO L290 TraceCheckUtils]: 38: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,286 INFO L290 TraceCheckUtils]: 39: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,286 INFO L290 TraceCheckUtils]: 40: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,287 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #88#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,287 INFO L272 TraceCheckUtils]: 42: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,287 INFO L290 TraceCheckUtils]: 43: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,287 INFO L290 TraceCheckUtils]: 44: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,287 INFO L290 TraceCheckUtils]: 45: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,288 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #90#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,288 INFO L272 TraceCheckUtils]: 47: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,288 INFO L290 TraceCheckUtils]: 48: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,288 INFO L290 TraceCheckUtils]: 49: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,288 INFO L290 TraceCheckUtils]: 50: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,289 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {53577#true} {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} #92#return; {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,289 INFO L290 TraceCheckUtils]: 52: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0))} is VALID [2022-04-28 12:24:53,289 INFO L290 TraceCheckUtils]: 53: Hoare triple {53670#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= 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; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,290 INFO L290 TraceCheckUtils]: 54: Hoare triple {53743#(= main_~s~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,290 INFO L290 TraceCheckUtils]: 55: Hoare triple {53743#(= main_~s~0 0)} assume !!(#t~post6 < 100);havoc #t~post6; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,290 INFO L290 TraceCheckUtils]: 56: Hoare triple {53743#(= main_~s~0 0)} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,291 INFO L290 TraceCheckUtils]: 57: Hoare triple {53743#(= main_~s~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,291 INFO L290 TraceCheckUtils]: 58: Hoare triple {53743#(= main_~s~0 0)} assume !!(#t~post7 < 100);havoc #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,291 INFO L272 TraceCheckUtils]: 59: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,291 INFO L290 TraceCheckUtils]: 60: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,291 INFO L290 TraceCheckUtils]: 61: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,291 INFO L290 TraceCheckUtils]: 62: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,292 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #86#return; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,292 INFO L272 TraceCheckUtils]: 64: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,292 INFO L290 TraceCheckUtils]: 65: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,292 INFO L290 TraceCheckUtils]: 66: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,292 INFO L290 TraceCheckUtils]: 67: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,292 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #88#return; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,293 INFO L272 TraceCheckUtils]: 69: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L290 TraceCheckUtils]: 70: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L290 TraceCheckUtils]: 71: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L290 TraceCheckUtils]: 72: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #90#return; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,293 INFO L272 TraceCheckUtils]: 74: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L290 TraceCheckUtils]: 75: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L290 TraceCheckUtils]: 76: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,293 INFO L290 TraceCheckUtils]: 77: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,294 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #92#return; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,294 INFO L290 TraceCheckUtils]: 79: Hoare triple {53743#(= main_~s~0 0)} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,295 INFO L290 TraceCheckUtils]: 80: Hoare triple {53743#(= main_~s~0 0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,295 INFO L290 TraceCheckUtils]: 81: Hoare triple {53743#(= main_~s~0 0)} assume !!(#t~post7 < 100);havoc #t~post7; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,295 INFO L272 TraceCheckUtils]: 82: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,295 INFO L290 TraceCheckUtils]: 83: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,295 INFO L290 TraceCheckUtils]: 84: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,295 INFO L290 TraceCheckUtils]: 85: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,296 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #86#return; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,296 INFO L272 TraceCheckUtils]: 87: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,296 INFO L290 TraceCheckUtils]: 88: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,296 INFO L290 TraceCheckUtils]: 89: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,296 INFO L290 TraceCheckUtils]: 90: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,297 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {53577#true} {53743#(= main_~s~0 0)} #88#return; {53743#(= main_~s~0 0)} is VALID [2022-04-28 12:24:53,297 INFO L272 TraceCheckUtils]: 92: Hoare triple {53743#(= main_~s~0 0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,297 INFO L290 TraceCheckUtils]: 93: Hoare triple {53577#true} ~cond := #in~cond; {53864#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:24:53,297 INFO L290 TraceCheckUtils]: 94: Hoare triple {53864#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:24:53,299 INFO L290 TraceCheckUtils]: 95: Hoare triple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:24:53,300 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} {53743#(= main_~s~0 0)} #90#return; {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:24:53,300 INFO L272 TraceCheckUtils]: 97: Hoare triple {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,300 INFO L290 TraceCheckUtils]: 98: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,300 INFO L290 TraceCheckUtils]: 99: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,300 INFO L290 TraceCheckUtils]: 100: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,301 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {53577#true} {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #92#return; {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:24:53,302 INFO L290 TraceCheckUtils]: 102: Hoare triple {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {53875#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:24:53,302 INFO L290 TraceCheckUtils]: 103: Hoare triple {53875#(and (= main_~s~0 0) (= 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; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,303 INFO L290 TraceCheckUtils]: 104: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,303 INFO L290 TraceCheckUtils]: 105: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,304 INFO L290 TraceCheckUtils]: 106: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,304 INFO L290 TraceCheckUtils]: 107: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,305 INFO L290 TraceCheckUtils]: 108: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,305 INFO L272 TraceCheckUtils]: 109: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:24:53,305 INFO L290 TraceCheckUtils]: 110: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:24:53,305 INFO L290 TraceCheckUtils]: 111: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:24:53,305 INFO L290 TraceCheckUtils]: 112: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:24:53,306 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {53577#true} {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} #86#return; {53897#(and (= main_~r~0 0) (= main_~a~0 (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:24:53,307 INFO L272 TraceCheckUtils]: 114: Hoare triple {53897#(and (= main_~r~0 0) (= main_~a~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)); {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:24:53,308 INFO L290 TraceCheckUtils]: 115: Hoare triple {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {53935#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:24:53,308 INFO L290 TraceCheckUtils]: 116: Hoare triple {53935#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {53578#false} is VALID [2022-04-28 12:24:53,308 INFO L290 TraceCheckUtils]: 117: Hoare triple {53578#false} assume !false; {53578#false} is VALID [2022-04-28 12:24:53,309 INFO L134 CoverageAnalysis]: Checked inductivity of 405 backedges. 57 proven. 43 refuted. 0 times theorem prover too weak. 305 trivial. 0 not checked. [2022-04-28 12:24:53,309 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:25:10,148 INFO L290 TraceCheckUtils]: 117: Hoare triple {53578#false} assume !false; {53578#false} is VALID [2022-04-28 12:25:10,149 INFO L290 TraceCheckUtils]: 116: Hoare triple {53935#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {53578#false} is VALID [2022-04-28 12:25:10,149 INFO L290 TraceCheckUtils]: 115: Hoare triple {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {53935#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:25:10,150 INFO L272 TraceCheckUtils]: 114: Hoare triple {53951#(= 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)); {53931#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:25:10,150 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {53577#true} {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #86#return; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,150 INFO L290 TraceCheckUtils]: 112: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,150 INFO L290 TraceCheckUtils]: 111: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,150 INFO L290 TraceCheckUtils]: 110: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,150 INFO L272 TraceCheckUtils]: 109: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,151 INFO L290 TraceCheckUtils]: 108: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,151 INFO L290 TraceCheckUtils]: 107: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,152 INFO L290 TraceCheckUtils]: 106: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,152 INFO L290 TraceCheckUtils]: 105: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,152 INFO L290 TraceCheckUtils]: 104: Hoare triple {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,153 INFO L290 TraceCheckUtils]: 103: Hoare triple {53985#(= 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; {53951#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 12:25:10,153 INFO L290 TraceCheckUtils]: 102: Hoare triple {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:25:10,154 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {53577#true} {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #92#return; {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:25:10,154 INFO L290 TraceCheckUtils]: 100: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,154 INFO L290 TraceCheckUtils]: 99: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,154 INFO L290 TraceCheckUtils]: 98: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,154 INFO L272 TraceCheckUtils]: 97: Hoare triple {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,154 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} {53577#true} #90#return; {53985#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:25:10,155 INFO L290 TraceCheckUtils]: 95: Hoare triple {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:25:10,155 INFO L290 TraceCheckUtils]: 94: Hoare triple {54016#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {53868#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:25:10,155 INFO L290 TraceCheckUtils]: 93: Hoare triple {53577#true} ~cond := #in~cond; {54016#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:25:10,155 INFO L272 TraceCheckUtils]: 92: Hoare triple {53577#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {53577#true} {53577#true} #88#return; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 90: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 89: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 88: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L272 TraceCheckUtils]: 87: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {53577#true} {53577#true} #86#return; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 85: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 84: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 83: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L272 TraceCheckUtils]: 82: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 81: Hoare triple {53577#true} assume !!(#t~post7 < 100);havoc #t~post7; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 80: Hoare triple {53577#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L290 TraceCheckUtils]: 79: Hoare triple {53577#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {53577#true} is VALID [2022-04-28 12:25:10,156 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {53577#true} {53577#true} #92#return; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 77: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 76: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 75: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L272 TraceCheckUtils]: 74: Hoare triple {53577#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {53577#true} {53577#true} #90#return; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 72: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 71: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 70: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L272 TraceCheckUtils]: 69: Hoare triple {53577#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {53577#true} {53577#true} #88#return; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 67: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 66: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L290 TraceCheckUtils]: 65: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L272 TraceCheckUtils]: 64: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,157 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {53577#true} {53577#true} #86#return; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 62: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 61: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 60: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L272 TraceCheckUtils]: 59: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 58: Hoare triple {53577#true} assume !!(#t~post7 < 100);havoc #t~post7; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 57: Hoare triple {53577#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 56: Hoare triple {53577#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 55: Hoare triple {53577#true} assume !!(#t~post6 < 100);havoc #t~post6; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 54: Hoare triple {53577#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 53: Hoare triple {53577#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; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 52: Hoare triple {53577#true} assume !(~c~0 >= ~b~0); {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {53577#true} {53577#true} #92#return; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 50: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 49: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L290 TraceCheckUtils]: 48: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,158 INFO L272 TraceCheckUtils]: 47: Hoare triple {53577#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {53577#true} {53577#true} #90#return; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 45: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 44: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 43: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L272 TraceCheckUtils]: 42: Hoare triple {53577#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {53577#true} {53577#true} #88#return; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 40: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 39: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 38: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L272 TraceCheckUtils]: 37: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {53577#true} {53577#true} #86#return; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 35: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 34: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,159 INFO L290 TraceCheckUtils]: 33: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L272 TraceCheckUtils]: 32: Hoare triple {53577#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 31: Hoare triple {53577#true} assume !!(#t~post7 < 100);havoc #t~post7; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 30: Hoare triple {53577#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 29: Hoare triple {53577#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 28: Hoare triple {53577#true} assume !!(#t~post6 < 100);havoc #t~post6; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 27: Hoare triple {53577#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {53577#true} {53577#true} #84#return; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 24: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 23: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L272 TraceCheckUtils]: 22: Hoare triple {53577#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {53577#true} {53577#true} #82#return; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 20: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,160 INFO L290 TraceCheckUtils]: 18: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L272 TraceCheckUtils]: 17: Hoare triple {53577#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {53577#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {53577#true} {53577#true} #80#return; {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L290 TraceCheckUtils]: 12: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,161 INFO L272 TraceCheckUtils]: 11: Hoare triple {53577#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,166 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {53577#true} {53577#true} #78#return; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L290 TraceCheckUtils]: 9: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {53577#true} assume !(0 == ~cond); {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L290 TraceCheckUtils]: 7: Hoare triple {53577#true} ~cond := #in~cond; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L272 TraceCheckUtils]: 6: Hoare triple {53577#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {53577#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L272 TraceCheckUtils]: 4: Hoare triple {53577#true} call #t~ret8 := main(); {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53577#true} {53577#true} #98#return; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {53577#true} assume true; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L290 TraceCheckUtils]: 1: Hoare triple {53577#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; {53577#true} is VALID [2022-04-28 12:25:10,167 INFO L272 TraceCheckUtils]: 0: Hoare triple {53577#true} call ULTIMATE.init(); {53577#true} is VALID [2022-04-28 12:25:10,168 INFO L134 CoverageAnalysis]: Checked inductivity of 405 backedges. 78 proven. 7 refuted. 0 times theorem prover too weak. 320 trivial. 0 not checked. [2022-04-28 12:25:10,168 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:25:10,168 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2031041385] [2022-04-28 12:25:10,168 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:25:10,168 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1207710497] [2022-04-28 12:25:10,168 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1207710497] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:25:10,168 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:25:10,168 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 14 [2022-04-28 12:25:10,169 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:25:10,169 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1552289808] [2022-04-28 12:25:10,169 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1552289808] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:25:10,169 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:25:10,169 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 12:25:10,169 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [925948105] [2022-04-28 12:25:10,169 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:25:10,169 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) Word has length 118 [2022-04-28 12:25:10,169 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:25:10,169 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:25:10,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:25:10,251 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 12:25:10,251 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:25:10,252 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 12:25:10,252 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=149, Unknown=0, NotChecked=0, Total=182 [2022-04-28 12:25:10,252 INFO L87 Difference]: Start difference. First operand 553 states and 692 transitions. Second operand has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:25:12,779 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:25:12,779 INFO L93 Difference]: Finished difference Result 606 states and 774 transitions. [2022-04-28 12:25:12,779 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 12:25:12,779 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) Word has length 118 [2022-04-28 12:25:12,780 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:25:12,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:25:12,781 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 127 transitions. [2022-04-28 12:25:12,781 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:25:12,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 127 transitions. [2022-04-28 12:25:12,782 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 127 transitions. [2022-04-28 12:25:12,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:25:12,933 INFO L225 Difference]: With dead ends: 606 [2022-04-28 12:25:12,933 INFO L226 Difference]: Without dead ends: 603 [2022-04-28 12:25:12,934 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 239 GetRequests, 222 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-28 12:25:12,934 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 33 mSDsluCounter, 287 mSDsCounter, 0 mSdLazyCounter, 393 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 344 SdHoareTripleChecker+Invalid, 423 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 393 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 12:25:12,934 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 344 Invalid, 423 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 393 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 12:25:12,935 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 603 states. [2022-04-28 12:25:14,196 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 603 to 596. [2022-04-28 12:25:14,196 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:25:14,197 INFO L82 GeneralOperation]: Start isEquivalent. First operand 603 states. Second operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-28 12:25:14,197 INFO L74 IsIncluded]: Start isIncluded. First operand 603 states. Second operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-28 12:25:14,198 INFO L87 Difference]: Start difference. First operand 603 states. Second operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-28 12:25:14,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:25:14,210 INFO L93 Difference]: Finished difference Result 603 states and 770 transitions. [2022-04-28 12:25:14,211 INFO L276 IsEmpty]: Start isEmpty. Operand 603 states and 770 transitions. [2022-04-28 12:25:14,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:25:14,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:25:14,212 INFO L74 IsIncluded]: Start isIncluded. First operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) Second operand 603 states. [2022-04-28 12:25:14,212 INFO L87 Difference]: Start difference. First operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) Second operand 603 states. [2022-04-28 12:25:14,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:25:14,231 INFO L93 Difference]: Finished difference Result 603 states and 770 transitions. [2022-04-28 12:25:14,231 INFO L276 IsEmpty]: Start isEmpty. Operand 603 states and 770 transitions. [2022-04-28 12:25:14,232 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:25:14,232 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:25:14,232 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:25:14,232 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:25:14,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 596 states, 386 states have (on average 1.2098445595854923) internal successors, (467), 393 states have internal predecessors, (467), 150 states have call successors, (150), 60 states have call predecessors, (150), 59 states have return successors, (146), 142 states have call predecessors, (146), 146 states have call successors, (146) [2022-04-28 12:25:14,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 596 states to 596 states and 763 transitions. [2022-04-28 12:25:14,251 INFO L78 Accepts]: Start accepts. Automaton has 596 states and 763 transitions. Word has length 118 [2022-04-28 12:25:14,251 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:25:14,251 INFO L495 AbstractCegarLoop]: Abstraction has 596 states and 763 transitions. [2022-04-28 12:25:14,251 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.272727272727273) internal successors, (36), 10 states have internal predecessors, (36), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (16), 6 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:25:14,251 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 596 states and 763 transitions. [2022-04-28 12:25:15,603 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 763 edges. 763 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:25:15,603 INFO L276 IsEmpty]: Start isEmpty. Operand 596 states and 763 transitions. [2022-04-28 12:25:15,604 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2022-04-28 12:25:15,604 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:25:15,604 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:25:15,622 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:25:15,809 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:25:15,809 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:25:15,809 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:25:15,810 INFO L85 PathProgramCache]: Analyzing trace with hash 992936989, now seen corresponding path program 5 times [2022-04-28 12:25:15,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:25:15,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [506998736] [2022-04-28 12:25:15,810 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:25:15,810 INFO L85 PathProgramCache]: Analyzing trace with hash 992936989, now seen corresponding path program 6 times [2022-04-28 12:25:15,810 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:25:15,810 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1612669004] [2022-04-28 12:25:15,811 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:25:15,811 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:25:15,827 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:25:15,827 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [928349605] [2022-04-28 12:25:15,827 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 12:25:15,827 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:25:15,827 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:25:15,828 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:25:15,849 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:25:16,195 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 12:25:16,195 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:25:16,197 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 48 conjunts are in the unsatisfiable core [2022-04-28 12:25:16,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:25:16,228 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:25:41,326 INFO L272 TraceCheckUtils]: 0: Hoare triple {57916#true} call ULTIMATE.init(); {57916#true} is VALID [2022-04-28 12:25:41,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {57916#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; {57916#true} is VALID [2022-04-28 12:25:41,326 INFO L290 TraceCheckUtils]: 2: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,326 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {57916#true} {57916#true} #98#return; {57916#true} is VALID [2022-04-28 12:25:41,326 INFO L272 TraceCheckUtils]: 4: Hoare triple {57916#true} call #t~ret8 := main(); {57916#true} is VALID [2022-04-28 12:25:41,326 INFO L290 TraceCheckUtils]: 5: Hoare triple {57916#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {57916#true} is VALID [2022-04-28 12:25:41,326 INFO L272 TraceCheckUtils]: 6: Hoare triple {57916#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,327 INFO L290 TraceCheckUtils]: 7: Hoare triple {57916#true} ~cond := #in~cond; {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:25:41,327 INFO L290 TraceCheckUtils]: 8: Hoare triple {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:25:41,327 INFO L290 TraceCheckUtils]: 9: Hoare triple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:25:41,328 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} {57916#true} #78#return; {57953#(<= 1 main_~x~0)} is VALID [2022-04-28 12:25:41,328 INFO L272 TraceCheckUtils]: 11: Hoare triple {57953#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,328 INFO L290 TraceCheckUtils]: 12: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,328 INFO L290 TraceCheckUtils]: 13: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,328 INFO L290 TraceCheckUtils]: 14: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,328 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {57916#true} {57953#(<= 1 main_~x~0)} #80#return; {57953#(<= 1 main_~x~0)} is VALID [2022-04-28 12:25:41,329 INFO L290 TraceCheckUtils]: 16: Hoare triple {57953#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,329 INFO L272 TraceCheckUtils]: 17: Hoare triple {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,329 INFO L290 TraceCheckUtils]: 18: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,330 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {57916#true} {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #82#return; {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,330 INFO L272 TraceCheckUtils]: 22: Hoare triple {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,330 INFO L290 TraceCheckUtils]: 23: Hoare triple {57916#true} ~cond := #in~cond; {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 12:25:41,330 INFO L290 TraceCheckUtils]: 24: Hoare triple {57942#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:25:41,331 INFO L290 TraceCheckUtils]: 25: Hoare triple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {57946#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 12:25:41,332 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {57946#(not (= |assume_abort_if_not_#in~cond| 0))} {57972#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~p~0 1))} #84#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,333 INFO L290 TraceCheckUtils]: 27: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,333 INFO L290 TraceCheckUtils]: 28: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,334 INFO L290 TraceCheckUtils]: 29: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,334 INFO L290 TraceCheckUtils]: 30: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,334 INFO L290 TraceCheckUtils]: 31: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,335 INFO L272 TraceCheckUtils]: 32: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,335 INFO L290 TraceCheckUtils]: 34: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,335 INFO L290 TraceCheckUtils]: 35: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,336 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #86#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,336 INFO L272 TraceCheckUtils]: 37: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,336 INFO L290 TraceCheckUtils]: 38: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,336 INFO L290 TraceCheckUtils]: 39: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,336 INFO L290 TraceCheckUtils]: 40: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,336 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #88#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,337 INFO L272 TraceCheckUtils]: 42: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,337 INFO L290 TraceCheckUtils]: 43: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,337 INFO L290 TraceCheckUtils]: 44: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,337 INFO L290 TraceCheckUtils]: 45: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,337 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #90#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,337 INFO L272 TraceCheckUtils]: 47: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,338 INFO L290 TraceCheckUtils]: 48: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,338 INFO L290 TraceCheckUtils]: 49: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,338 INFO L290 TraceCheckUtils]: 50: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,338 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #92#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,339 INFO L290 TraceCheckUtils]: 52: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,339 INFO L290 TraceCheckUtils]: 53: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,340 INFO L290 TraceCheckUtils]: 54: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,340 INFO L272 TraceCheckUtils]: 55: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,340 INFO L290 TraceCheckUtils]: 56: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,340 INFO L290 TraceCheckUtils]: 57: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,340 INFO L290 TraceCheckUtils]: 58: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,341 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #86#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,341 INFO L272 TraceCheckUtils]: 60: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,341 INFO L290 TraceCheckUtils]: 61: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,341 INFO L290 TraceCheckUtils]: 62: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,341 INFO L290 TraceCheckUtils]: 63: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,342 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #88#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,342 INFO L272 TraceCheckUtils]: 65: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,342 INFO L290 TraceCheckUtils]: 66: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,342 INFO L290 TraceCheckUtils]: 67: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,342 INFO L290 TraceCheckUtils]: 68: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,343 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #90#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,343 INFO L272 TraceCheckUtils]: 70: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,343 INFO L290 TraceCheckUtils]: 71: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,343 INFO L290 TraceCheckUtils]: 72: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,343 INFO L290 TraceCheckUtils]: 73: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,344 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {57916#true} {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #92#return; {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,345 INFO L290 TraceCheckUtils]: 75: Hoare triple {58003#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,346 INFO L290 TraceCheckUtils]: 76: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,346 INFO L290 TraceCheckUtils]: 77: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,346 INFO L272 TraceCheckUtils]: 78: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,346 INFO L290 TraceCheckUtils]: 79: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,346 INFO L290 TraceCheckUtils]: 80: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,346 INFO L290 TraceCheckUtils]: 81: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,347 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #86#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,347 INFO L272 TraceCheckUtils]: 83: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,347 INFO L290 TraceCheckUtils]: 84: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,347 INFO L290 TraceCheckUtils]: 85: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,347 INFO L290 TraceCheckUtils]: 86: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,348 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #88#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,348 INFO L272 TraceCheckUtils]: 88: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,348 INFO L290 TraceCheckUtils]: 89: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,348 INFO L290 TraceCheckUtils]: 90: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,348 INFO L290 TraceCheckUtils]: 91: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,349 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #90#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,349 INFO L272 TraceCheckUtils]: 93: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,349 INFO L290 TraceCheckUtils]: 94: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,349 INFO L290 TraceCheckUtils]: 95: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,349 INFO L290 TraceCheckUtils]: 96: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,350 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {57916#true} {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} #92#return; {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,350 INFO L290 TraceCheckUtils]: 98: Hoare triple {58151#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (<= 0 main_~c~0) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {58221#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= main_~p~0 1))} is VALID [2022-04-28 12:25:41,351 INFO L290 TraceCheckUtils]: 99: Hoare triple {58221#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (not (<= main_~y~0 main_~c~0)) (<= 0 main_~c~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647) (= 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; {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,351 INFO L290 TraceCheckUtils]: 100: Hoare triple {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,352 INFO L290 TraceCheckUtils]: 101: Hoare triple {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} assume !!(#t~post6 < 100);havoc #t~post6; {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,352 INFO L290 TraceCheckUtils]: 102: Hoare triple {58225#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,353 INFO L290 TraceCheckUtils]: 103: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,353 INFO L290 TraceCheckUtils]: 104: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} assume !!(#t~post7 < 100);havoc #t~post7; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,353 INFO L272 TraceCheckUtils]: 105: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,353 INFO L290 TraceCheckUtils]: 106: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,353 INFO L290 TraceCheckUtils]: 107: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,353 INFO L290 TraceCheckUtils]: 108: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,354 INFO L284 TraceCheckUtils]: 109: Hoare quadruple {57916#true} {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #86#return; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,354 INFO L272 TraceCheckUtils]: 110: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,354 INFO L290 TraceCheckUtils]: 111: Hoare triple {57916#true} ~cond := #in~cond; {57916#true} is VALID [2022-04-28 12:25:41,354 INFO L290 TraceCheckUtils]: 112: Hoare triple {57916#true} assume !(0 == ~cond); {57916#true} is VALID [2022-04-28 12:25:41,354 INFO L290 TraceCheckUtils]: 113: Hoare triple {57916#true} assume true; {57916#true} is VALID [2022-04-28 12:25:41,355 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {57916#true} {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #88#return; {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,355 INFO L272 TraceCheckUtils]: 115: Hoare triple {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {57916#true} is VALID [2022-04-28 12:25:41,355 INFO L290 TraceCheckUtils]: 116: Hoare triple {57916#true} ~cond := #in~cond; {58278#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:25:41,356 INFO L290 TraceCheckUtils]: 117: Hoare triple {58278#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:25:41,356 INFO L290 TraceCheckUtils]: 118: Hoare triple {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:25:41,357 INFO L284 TraceCheckUtils]: 119: Hoare quadruple {58282#(not (= |__VERIFIER_assert_#in~cond| 0))} {58235#(and (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} #90#return; {58289#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} is VALID [2022-04-28 12:25:41,361 INFO L272 TraceCheckUtils]: 120: Hoare triple {58289#(and (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (not (<= main_~y~0 main_~b~0)) (not (= main_~b~0 0)) (= main_~yy~0 (* main_~y~0 main_~y~0)) (<= 0 main_~b~0) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)) (< main_~yy~0 2147483647))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {58293#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:25:41,361 INFO L290 TraceCheckUtils]: 121: Hoare triple {58293#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {58297#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:25:41,362 INFO L290 TraceCheckUtils]: 122: Hoare triple {58297#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {57917#false} is VALID [2022-04-28 12:25:41,362 INFO L290 TraceCheckUtils]: 123: Hoare triple {57917#false} assume !false; {57917#false} is VALID [2022-04-28 12:25:41,362 INFO L134 CoverageAnalysis]: Checked inductivity of 516 backedges. 91 proven. 28 refuted. 0 times theorem prover too weak. 397 trivial. 0 not checked. [2022-04-28 12:25:41,362 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:26:19,237 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:26:19,237 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1612669004] [2022-04-28 12:26:19,237 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:26:19,237 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [928349605] [2022-04-28 12:26:19,237 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [928349605] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 12:26:19,238 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 12:26:19,238 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2022-04-28 12:26:19,238 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:26:19,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [506998736] [2022-04-28 12:26:19,238 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [506998736] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:26:19,238 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:26:19,238 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 12:26:19,238 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1821941300] [2022-04-28 12:26:19,238 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:26:19,239 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 124 [2022-04-28 12:26:19,239 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:26:19,239 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:26:19,324 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:26:19,325 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 12:26:19,325 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:26:19,325 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 12:26:19,325 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=103, Invalid=403, Unknown=0, NotChecked=0, Total=506 [2022-04-28 12:26:19,325 INFO L87 Difference]: Start difference. First operand 596 states and 763 transitions. Second operand has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:26:32,593 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:26:32,594 INFO L93 Difference]: Finished difference Result 619 states and 791 transitions. [2022-04-28 12:26:32,594 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 12:26:32,594 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) Word has length 124 [2022-04-28 12:26:32,594 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:26:32,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:26:32,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 111 transitions. [2022-04-28 12:26:32,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:26:32,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 111 transitions. [2022-04-28 12:26:32,597 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 111 transitions. [2022-04-28 12:26:32,757 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:26:32,773 INFO L225 Difference]: With dead ends: 619 [2022-04-28 12:26:32,773 INFO L226 Difference]: Without dead ends: 615 [2022-04-28 12:26:32,774 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 151 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 165 ImplicationChecksByTransitivity, 4.0s TimeCoverageRelationStatistics Valid=133, Invalid=569, Unknown=0, NotChecked=0, Total=702 [2022-04-28 12:26:32,774 INFO L413 NwaCegarLoop]: 50 mSDtfsCounter, 54 mSDsluCounter, 268 mSDsCounter, 0 mSdLazyCounter, 624 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 318 SdHoareTripleChecker+Invalid, 656 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 624 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.3s IncrementalHoareTripleChecker+Time [2022-04-28 12:26:32,774 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 318 Invalid, 656 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 624 Invalid, 0 Unknown, 0 Unchecked, 3.3s Time] [2022-04-28 12:26:32,775 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 615 states. [2022-04-28 12:26:34,198 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 615 to 609. [2022-04-28 12:26:34,198 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:26:34,199 INFO L82 GeneralOperation]: Start isEquivalent. First operand 615 states. Second operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-28 12:26:34,199 INFO L74 IsIncluded]: Start isIncluded. First operand 615 states. Second operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-28 12:26:34,200 INFO L87 Difference]: Start difference. First operand 615 states. Second operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-28 12:26:34,220 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:26:34,220 INFO L93 Difference]: Finished difference Result 615 states and 786 transitions. [2022-04-28 12:26:34,220 INFO L276 IsEmpty]: Start isEmpty. Operand 615 states and 786 transitions. [2022-04-28 12:26:34,221 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:26:34,221 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:26:34,222 INFO L74 IsIncluded]: Start isIncluded. First operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) Second operand 615 states. [2022-04-28 12:26:34,222 INFO L87 Difference]: Start difference. First operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) Second operand 615 states. [2022-04-28 12:26:34,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:26:34,235 INFO L93 Difference]: Finished difference Result 615 states and 786 transitions. [2022-04-28 12:26:34,235 INFO L276 IsEmpty]: Start isEmpty. Operand 615 states and 786 transitions. [2022-04-28 12:26:34,236 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:26:34,236 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:26:34,236 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:26:34,236 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:26:34,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 609 states, 394 states have (on average 1.2081218274111676) internal successors, (476), 400 states have internal predecessors, (476), 154 states have call successors, (154), 62 states have call predecessors, (154), 60 states have return successors, (150), 146 states have call predecessors, (150), 150 states have call successors, (150) [2022-04-28 12:26:34,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 609 states to 609 states and 780 transitions. [2022-04-28 12:26:34,254 INFO L78 Accepts]: Start accepts. Automaton has 609 states and 780 transitions. Word has length 124 [2022-04-28 12:26:34,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:26:34,254 INFO L495 AbstractCegarLoop]: Abstraction has 609 states and 780 transitions. [2022-04-28 12:26:34,254 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 14 states have (on average 2.5) internal successors, (35), 13 states have internal predecessors, (35), 7 states have call successors, (18), 2 states have call predecessors, (18), 3 states have return successors, (16), 7 states have call predecessors, (16), 6 states have call successors, (16) [2022-04-28 12:26:34,254 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 609 states and 780 transitions. [2022-04-28 12:26:35,693 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 780 edges. 780 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:26:35,693 INFO L276 IsEmpty]: Start isEmpty. Operand 609 states and 780 transitions. [2022-04-28 12:26:35,693 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2022-04-28 12:26:35,694 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:26:35,694 INFO L195 NwaCegarLoop]: trace histogram [15, 14, 14, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:26:35,699 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-28 12:26:35,894 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:26:35,894 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:26:35,895 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:26:35,895 INFO L85 PathProgramCache]: Analyzing trace with hash -1110867224, now seen corresponding path program 7 times [2022-04-28 12:26:35,895 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:26:35,895 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1242195288] [2022-04-28 12:26:35,895 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:26:35,895 INFO L85 PathProgramCache]: Analyzing trace with hash -1110867224, now seen corresponding path program 8 times [2022-04-28 12:26:35,896 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:26:35,896 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1142100252] [2022-04-28 12:26:35,896 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:26:35,896 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:26:35,908 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:26:35,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1100376548] [2022-04-28 12:26:35,909 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 12:26:35,909 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:26:35,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:26:35,910 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:26:35,911 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:26:35,980 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 12:26:35,980 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:26:35,982 INFO L263 TraceCheckSpWp]: Trace formula consists of 331 conjuncts, 71 conjunts are in the unsatisfiable core [2022-04-28 12:26:36,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:26:36,006 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:26:54,715 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:27:04,735 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 12:27:04,999 INFO L272 TraceCheckUtils]: 0: Hoare triple {62154#true} call ULTIMATE.init(); {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L290 TraceCheckUtils]: 1: Hoare triple {62154#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; {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L290 TraceCheckUtils]: 2: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {62154#true} {62154#true} #98#return; {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L272 TraceCheckUtils]: 4: Hoare triple {62154#true} call #t~ret8 := main(); {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L290 TraceCheckUtils]: 5: Hoare triple {62154#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L272 TraceCheckUtils]: 6: Hoare triple {62154#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L290 TraceCheckUtils]: 7: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:04,999 INFO L290 TraceCheckUtils]: 8: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L290 TraceCheckUtils]: 9: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {62154#true} {62154#true} #78#return; {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L272 TraceCheckUtils]: 11: Hoare triple {62154#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L290 TraceCheckUtils]: 12: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L290 TraceCheckUtils]: 13: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L290 TraceCheckUtils]: 14: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {62154#true} {62154#true} #80#return; {62154#true} is VALID [2022-04-28 12:27:05,000 INFO L290 TraceCheckUtils]: 16: Hoare triple {62154#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {62207#(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:27:05,000 INFO L272 TraceCheckUtils]: 17: Hoare triple {62207#(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))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,001 INFO L290 TraceCheckUtils]: 18: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,001 INFO L290 TraceCheckUtils]: 19: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,001 INFO L290 TraceCheckUtils]: 20: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,001 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {62154#true} {62207#(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))} #82#return; {62207#(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:27:05,001 INFO L272 TraceCheckUtils]: 22: Hoare triple {62207#(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))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,001 INFO L290 TraceCheckUtils]: 23: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,001 INFO L290 TraceCheckUtils]: 24: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,002 INFO L290 TraceCheckUtils]: 25: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,002 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {62154#true} {62207#(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))} #84#return; {62207#(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:27:05,002 INFO L290 TraceCheckUtils]: 27: Hoare triple {62207#(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; {62207#(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:27:05,003 INFO L290 TraceCheckUtils]: 28: Hoare triple {62207#(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 < 100);havoc #t~post6; {62207#(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:27:05,003 INFO L290 TraceCheckUtils]: 29: Hoare triple {62207#(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);~c~0 := ~a~0;~k~0 := 0; {62247#(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:27:05,004 INFO L290 TraceCheckUtils]: 30: Hoare triple {62247#(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; {62247#(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:27:05,004 INFO L290 TraceCheckUtils]: 31: Hoare triple {62247#(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 < 100);havoc #t~post7; {62247#(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:27:05,004 INFO L272 TraceCheckUtils]: 32: Hoare triple {62247#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,004 INFO L290 TraceCheckUtils]: 33: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,004 INFO L290 TraceCheckUtils]: 34: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,004 INFO L290 TraceCheckUtils]: 35: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,005 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {62154#true} {62247#(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))} #86#return; {62247#(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:27:05,005 INFO L272 TraceCheckUtils]: 37: Hoare triple {62247#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,005 INFO L290 TraceCheckUtils]: 38: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,005 INFO L290 TraceCheckUtils]: 39: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,005 INFO L290 TraceCheckUtils]: 40: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,006 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {62154#true} {62247#(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))} #88#return; {62247#(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:27:05,006 INFO L272 TraceCheckUtils]: 42: Hoare triple {62247#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,006 INFO L290 TraceCheckUtils]: 43: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:27:05,007 INFO L290 TraceCheckUtils]: 44: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,007 INFO L290 TraceCheckUtils]: 45: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,008 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62247#(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))} #90#return; {62247#(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:27:05,008 INFO L272 TraceCheckUtils]: 47: Hoare triple {62247#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,008 INFO L290 TraceCheckUtils]: 48: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,008 INFO L290 TraceCheckUtils]: 49: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,008 INFO L290 TraceCheckUtils]: 50: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,008 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {62154#true} {62247#(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))} #92#return; {62247#(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:27:05,009 INFO L290 TraceCheckUtils]: 52: Hoare triple {62247#(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); {62247#(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:27:05,009 INFO L290 TraceCheckUtils]: 53: Hoare triple {62247#(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; {62322#(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:27:05,010 INFO L290 TraceCheckUtils]: 54: Hoare triple {62322#(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; {62322#(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:27:05,010 INFO L290 TraceCheckUtils]: 55: Hoare triple {62322#(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 < 100);havoc #t~post6; {62322#(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:27:05,010 INFO L290 TraceCheckUtils]: 56: Hoare triple {62322#(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);~c~0 := ~a~0;~k~0 := 0; {62332#(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:27:05,011 INFO L290 TraceCheckUtils]: 57: Hoare triple {62332#(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; {62332#(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:27:05,011 INFO L290 TraceCheckUtils]: 58: Hoare triple {62332#(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 < 100);havoc #t~post7; {62332#(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:27:05,011 INFO L272 TraceCheckUtils]: 59: Hoare triple {62332#(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))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,011 INFO L290 TraceCheckUtils]: 60: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,011 INFO L290 TraceCheckUtils]: 61: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,012 INFO L290 TraceCheckUtils]: 62: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,012 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {62154#true} {62332#(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))} #86#return; {62332#(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:27:05,012 INFO L272 TraceCheckUtils]: 64: Hoare triple {62332#(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))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,012 INFO L290 TraceCheckUtils]: 65: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,012 INFO L290 TraceCheckUtils]: 66: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,012 INFO L290 TraceCheckUtils]: 67: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,013 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {62154#true} {62332#(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))} #88#return; {62332#(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:27:05,013 INFO L272 TraceCheckUtils]: 69: Hoare triple {62332#(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))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,013 INFO L290 TraceCheckUtils]: 70: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,013 INFO L290 TraceCheckUtils]: 71: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,013 INFO L290 TraceCheckUtils]: 72: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,014 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {62154#true} {62332#(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))} #90#return; {62332#(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:27:05,014 INFO L272 TraceCheckUtils]: 74: Hoare triple {62332#(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))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,014 INFO L290 TraceCheckUtils]: 75: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,014 INFO L290 TraceCheckUtils]: 76: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,014 INFO L290 TraceCheckUtils]: 77: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,015 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {62154#true} {62332#(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))} #92#return; {62332#(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:27:05,016 INFO L290 TraceCheckUtils]: 79: Hoare triple {62332#(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);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-28 12:27:05,017 INFO L290 TraceCheckUtils]: 80: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-28 12:27:05,017 INFO L290 TraceCheckUtils]: 81: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-28 12:27:05,017 INFO L272 TraceCheckUtils]: 82: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,018 INFO L290 TraceCheckUtils]: 83: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:27:05,018 INFO L290 TraceCheckUtils]: 84: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,018 INFO L290 TraceCheckUtils]: 85: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,019 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} #86#return; {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} is VALID [2022-04-28 12:27:05,019 INFO L272 TraceCheckUtils]: 87: Hoare triple {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,019 INFO L290 TraceCheckUtils]: 88: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:27:05,019 INFO L290 TraceCheckUtils]: 89: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,020 INFO L290 TraceCheckUtils]: 90: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,021 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62402#(and (= main_~s~0 0) (= main_~p~0 0) (= (+ main_~a~0 (* (- 1) main_~b~0)) main_~c~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~k~0 1))} #88#return; {62439#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 12:27:05,021 INFO L272 TraceCheckUtils]: 92: Hoare triple {62439#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,021 INFO L290 TraceCheckUtils]: 93: Hoare triple {62154#true} ~cond := #in~cond; {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:27:05,021 INFO L290 TraceCheckUtils]: 94: Hoare triple {62290#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,022 INFO L290 TraceCheckUtils]: 95: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:27:05,023 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62439#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #90#return; {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:27:05,023 INFO L272 TraceCheckUtils]: 97: Hoare triple {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,023 INFO L290 TraceCheckUtils]: 98: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,023 INFO L290 TraceCheckUtils]: 99: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,023 INFO L290 TraceCheckUtils]: 100: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,024 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {62154#true} {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} #92#return; {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:27:05,024 INFO L290 TraceCheckUtils]: 102: Hoare triple {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~0 (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 12:27:05,033 INFO L290 TraceCheckUtils]: 103: Hoare triple {62455#(and (= main_~x~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ (* main_~q~0 main_~x~0) main_~c~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; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,033 INFO L290 TraceCheckUtils]: 104: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,034 INFO L290 TraceCheckUtils]: 105: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,034 INFO L290 TraceCheckUtils]: 106: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,036 INFO L290 TraceCheckUtils]: 107: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,037 INFO L290 TraceCheckUtils]: 108: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,037 INFO L272 TraceCheckUtils]: 109: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,037 INFO L290 TraceCheckUtils]: 110: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,038 INFO L290 TraceCheckUtils]: 111: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,038 INFO L290 TraceCheckUtils]: 112: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,038 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {62154#true} {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #86#return; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,038 INFO L272 TraceCheckUtils]: 114: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:27:05,038 INFO L290 TraceCheckUtils]: 115: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:27:05,038 INFO L290 TraceCheckUtils]: 116: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:27:05,039 INFO L290 TraceCheckUtils]: 117: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:27:05,039 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {62154#true} {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} #88#return; {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} is VALID [2022-04-28 12:27:05,042 INFO L272 TraceCheckUtils]: 119: Hoare triple {62477#(and (or (and (= main_~y~0 (+ main_~b~0 (* (div main_~x~0 main_~x~0) main_~x~0))) (= (+ (div main_~x~0 main_~x~0) main_~q~0) 0)) (and (= main_~x~0 0) (= (+ (* main_~x~0 (div (* (- 1) main_~q~0) 1)) main_~b~0) main_~y~0))) (= main_~s~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:27:05,043 INFO L290 TraceCheckUtils]: 120: Hoare triple {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {62530#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:27:05,043 INFO L290 TraceCheckUtils]: 121: Hoare triple {62530#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {62155#false} is VALID [2022-04-28 12:27:05,043 INFO L290 TraceCheckUtils]: 122: Hoare triple {62155#false} assume !false; {62155#false} is VALID [2022-04-28 12:27:05,044 INFO L134 CoverageAnalysis]: Checked inductivity of 462 backedges. 93 proven. 101 refuted. 0 times theorem prover too weak. 268 trivial. 0 not checked. [2022-04-28 12:27:05,044 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 12:28:30,988 INFO L290 TraceCheckUtils]: 122: Hoare triple {62155#false} assume !false; {62155#false} is VALID [2022-04-28 12:28:30,988 INFO L290 TraceCheckUtils]: 121: Hoare triple {62530#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {62155#false} is VALID [2022-04-28 12:28:30,989 INFO L290 TraceCheckUtils]: 120: Hoare triple {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {62530#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:28:30,989 INFO L272 TraceCheckUtils]: 119: Hoare triple {62546#(= 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)); {62526#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:28:30,990 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {62154#true} {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #88#return; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:30,990 INFO L290 TraceCheckUtils]: 117: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:30,990 INFO L290 TraceCheckUtils]: 116: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:30,990 INFO L290 TraceCheckUtils]: 115: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:30,990 INFO L272 TraceCheckUtils]: 114: Hoare triple {62546#(= 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)); {62154#true} is VALID [2022-04-28 12:28:30,991 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {62154#true} {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #86#return; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:30,991 INFO L290 TraceCheckUtils]: 112: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:30,991 INFO L290 TraceCheckUtils]: 111: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:30,991 INFO L290 TraceCheckUtils]: 110: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:30,991 INFO L272 TraceCheckUtils]: 109: Hoare triple {62546#(= 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)); {62154#true} is VALID [2022-04-28 12:28:30,992 INFO L290 TraceCheckUtils]: 108: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:30,992 INFO L290 TraceCheckUtils]: 107: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:30,992 INFO L290 TraceCheckUtils]: 106: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:30,993 INFO L290 TraceCheckUtils]: 105: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:30,993 INFO L290 TraceCheckUtils]: 104: Hoare triple {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 12:28:32,995 WARN L290 TraceCheckUtils]: 103: Hoare triple {62595#(= (+ (* (+ (* (* main_~k~0 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; {62546#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 12:28:32,996 INFO L290 TraceCheckUtils]: 102: Hoare triple {62595#(= (+ (* (+ (* (* main_~k~0 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); {62595#(= (+ (* (+ (* (* main_~k~0 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:28:32,997 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {62154#true} {62595#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} #92#return; {62595#(= (+ (* (+ (* (* main_~k~0 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:28:32,997 INFO L290 TraceCheckUtils]: 100: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:32,997 INFO L290 TraceCheckUtils]: 99: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:32,997 INFO L290 TraceCheckUtils]: 98: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:32,997 INFO L272 TraceCheckUtils]: 97: Hoare triple {62595#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:32,998 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62617#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #90#return; {62595#(= (+ (* (+ (* (* main_~k~0 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:28:32,998 INFO L290 TraceCheckUtils]: 95: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:32,999 INFO L290 TraceCheckUtils]: 94: Hoare triple {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:32,999 INFO L290 TraceCheckUtils]: 93: Hoare triple {62154#true} ~cond := #in~cond; {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:28:32,999 INFO L272 TraceCheckUtils]: 92: Hoare triple {62617#(or (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,000 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62634#(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_~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)))))} #88#return; {62617#(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:28:33,000 INFO L290 TraceCheckUtils]: 90: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:33,001 INFO L290 TraceCheckUtils]: 89: Hoare triple {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:33,001 INFO L290 TraceCheckUtils]: 88: Hoare triple {62154#true} ~cond := #in~cond; {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:28:33,001 INFO L272 TraceCheckUtils]: 87: Hoare triple {62634#(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_~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)); {62154#true} is VALID [2022-04-28 12:28:33,017 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} {62154#true} #86#return; {62634#(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_~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:28:33,017 INFO L290 TraceCheckUtils]: 85: Hoare triple {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:33,017 INFO L290 TraceCheckUtils]: 84: Hoare triple {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {62294#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:33,018 INFO L290 TraceCheckUtils]: 83: Hoare triple {62154#true} ~cond := #in~cond; {62627#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 12:28:33,018 INFO L272 TraceCheckUtils]: 82: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,018 INFO L290 TraceCheckUtils]: 81: Hoare triple {62154#true} assume !!(#t~post7 < 100);havoc #t~post7; {62154#true} is VALID [2022-04-28 12:28:33,018 INFO L290 TraceCheckUtils]: 80: Hoare triple {62154#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62154#true} is VALID [2022-04-28 12:28:33,018 INFO L290 TraceCheckUtils]: 79: Hoare triple {62154#true} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {62154#true} is VALID [2022-04-28 12:28:33,018 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {62154#true} {62154#true} #92#return; {62154#true} is VALID [2022-04-28 12:28:33,018 INFO L290 TraceCheckUtils]: 77: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,018 INFO L290 TraceCheckUtils]: 76: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L290 TraceCheckUtils]: 75: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L272 TraceCheckUtils]: 74: Hoare triple {62154#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {62154#true} {62154#true} #90#return; {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L290 TraceCheckUtils]: 72: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L290 TraceCheckUtils]: 71: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L290 TraceCheckUtils]: 70: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L272 TraceCheckUtils]: 69: Hoare triple {62154#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {62154#true} {62154#true} #88#return; {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L290 TraceCheckUtils]: 67: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,019 INFO L290 TraceCheckUtils]: 66: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 65: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L272 TraceCheckUtils]: 64: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {62154#true} {62154#true} #86#return; {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 62: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 61: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 60: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L272 TraceCheckUtils]: 59: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 58: Hoare triple {62154#true} assume !!(#t~post7 < 100);havoc #t~post7; {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 57: Hoare triple {62154#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62154#true} is VALID [2022-04-28 12:28:33,020 INFO L290 TraceCheckUtils]: 56: Hoare triple {62154#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 55: Hoare triple {62154#true} assume !!(#t~post6 < 100);havoc #t~post6; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 54: Hoare triple {62154#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 53: Hoare triple {62154#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; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 52: Hoare triple {62154#true} assume !(~c~0 >= ~b~0); {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {62154#true} {62154#true} #92#return; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 50: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 49: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 48: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L272 TraceCheckUtils]: 47: Hoare triple {62154#true} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {62154#true} {62154#true} #90#return; {62154#true} is VALID [2022-04-28 12:28:33,021 INFO L290 TraceCheckUtils]: 45: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 44: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 43: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L272 TraceCheckUtils]: 42: Hoare triple {62154#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {62154#true} {62154#true} #88#return; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 40: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 39: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 38: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L272 TraceCheckUtils]: 37: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {62154#true} {62154#true} #86#return; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 35: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,022 INFO L290 TraceCheckUtils]: 34: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 33: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L272 TraceCheckUtils]: 32: Hoare triple {62154#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 31: Hoare triple {62154#true} assume !!(#t~post7 < 100);havoc #t~post7; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 30: Hoare triple {62154#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 29: Hoare triple {62154#true} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 28: Hoare triple {62154#true} assume !!(#t~post6 < 100);havoc #t~post6; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 27: Hoare triple {62154#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {62154#true} {62154#true} #84#return; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 25: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 24: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,023 INFO L290 TraceCheckUtils]: 23: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L272 TraceCheckUtils]: 22: Hoare triple {62154#true} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {62154#true} {62154#true} #82#return; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 20: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 19: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 18: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L272 TraceCheckUtils]: 17: Hoare triple {62154#true} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 16: Hoare triple {62154#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {62154#true} {62154#true} #80#return; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 13: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,024 INFO L290 TraceCheckUtils]: 12: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L272 TraceCheckUtils]: 11: Hoare triple {62154#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {62154#true} {62154#true} #78#return; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L290 TraceCheckUtils]: 8: Hoare triple {62154#true} assume !(0 == ~cond); {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {62154#true} ~cond := #in~cond; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {62154#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {62154#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {62154#true} call #t~ret8 := main(); {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {62154#true} {62154#true} #98#return; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L290 TraceCheckUtils]: 2: Hoare triple {62154#true} assume true; {62154#true} is VALID [2022-04-28 12:28:33,025 INFO L290 TraceCheckUtils]: 1: Hoare triple {62154#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; {62154#true} is VALID [2022-04-28 12:28:33,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {62154#true} call ULTIMATE.init(); {62154#true} is VALID [2022-04-28 12:28:33,026 INFO L134 CoverageAnalysis]: Checked inductivity of 462 backedges. 125 proven. 32 refuted. 0 times theorem prover too weak. 305 trivial. 0 not checked. [2022-04-28 12:28:33,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 12:28:33,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1142100252] [2022-04-28 12:28:33,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 12:28:33,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1100376548] [2022-04-28 12:28:33,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1100376548] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 12:28:33,027 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 12:28:33,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 10] total 19 [2022-04-28 12:28:33,027 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 12:28:33,027 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1242195288] [2022-04-28 12:28:33,027 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1242195288] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 12:28:33,027 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 12:28:33,027 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 12:28:33,027 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1851658751] [2022-04-28 12:28:33,027 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 12:28:33,028 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) Word has length 123 [2022-04-28 12:28:33,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 12:28:33,028 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-28 12:28:33,128 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:28:33,129 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 12:28:33,129 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 12:28:33,129 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 12:28:33,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=284, Unknown=0, NotChecked=0, Total=342 [2022-04-28 12:28:33,129 INFO L87 Difference]: Start difference. First operand 609 states and 780 transitions. Second operand has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-28 12:28:37,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:28:37,151 INFO L93 Difference]: Finished difference Result 638 states and 824 transitions. [2022-04-28 12:28:37,151 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 12:28:37,151 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) Word has length 123 [2022-04-28 12:28:37,151 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 12:28:37,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-28 12:28:37,153 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 138 transitions. [2022-04-28 12:28:37,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-28 12:28:37,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 138 transitions. [2022-04-28 12:28:37,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 138 transitions. [2022-04-28 12:28:37,328 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 138 edges. 138 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:28:37,346 INFO L225 Difference]: With dead ends: 638 [2022-04-28 12:28:37,346 INFO L226 Difference]: Without dead ends: 636 [2022-04-28 12:28:37,346 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 249 GetRequests, 226 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=87, Invalid=419, Unknown=0, NotChecked=0, Total=506 [2022-04-28 12:28:37,346 INFO L413 NwaCegarLoop]: 58 mSDtfsCounter, 38 mSDsluCounter, 331 mSDsCounter, 0 mSdLazyCounter, 659 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 389 SdHoareTripleChecker+Invalid, 693 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 659 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-04-28 12:28:37,347 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 389 Invalid, 693 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 659 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-04-28 12:28:37,347 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 636 states. [2022-04-28 12:28:38,782 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 636 to 632. [2022-04-28 12:28:38,782 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 12:28:38,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 636 states. Second operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-28 12:28:38,783 INFO L74 IsIncluded]: Start isIncluded. First operand 636 states. Second operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-28 12:28:38,784 INFO L87 Difference]: Start difference. First operand 636 states. Second operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-28 12:28:38,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:28:38,800 INFO L93 Difference]: Finished difference Result 636 states and 822 transitions. [2022-04-28 12:28:38,801 INFO L276 IsEmpty]: Start isEmpty. Operand 636 states and 822 transitions. [2022-04-28 12:28:38,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:28:38,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:28:38,803 INFO L74 IsIncluded]: Start isIncluded. First operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) Second operand 636 states. [2022-04-28 12:28:38,803 INFO L87 Difference]: Start difference. First operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) Second operand 636 states. [2022-04-28 12:28:38,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 12:28:38,820 INFO L93 Difference]: Finished difference Result 636 states and 822 transitions. [2022-04-28 12:28:38,820 INFO L276 IsEmpty]: Start isEmpty. Operand 636 states and 822 transitions. [2022-04-28 12:28:38,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 12:28:38,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 12:28:38,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 12:28:38,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 12:28:38,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 632 states, 404 states have (on average 1.2128712871287128) internal successors, (490), 410 states have internal predecessors, (490), 166 states have call successors, (166), 63 states have call predecessors, (166), 61 states have return successors, (162), 158 states have call predecessors, (162), 162 states have call successors, (162) [2022-04-28 12:28:38,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 632 states to 632 states and 818 transitions. [2022-04-28 12:28:38,844 INFO L78 Accepts]: Start accepts. Automaton has 632 states and 818 transitions. Word has length 123 [2022-04-28 12:28:38,844 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 12:28:38,844 INFO L495 AbstractCegarLoop]: Abstraction has 632 states and 818 transitions. [2022-04-28 12:28:38,844 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 8 states have call successors, (21), 2 states have call predecessors, (21), 2 states have return successors, (19), 8 states have call predecessors, (19), 8 states have call successors, (19) [2022-04-28 12:28:38,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 632 states and 818 transitions. [2022-04-28 12:28:40,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 818 edges. 818 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 12:28:40,473 INFO L276 IsEmpty]: Start isEmpty. Operand 632 states and 818 transitions. [2022-04-28 12:28:40,473 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 129 [2022-04-28 12:28:40,473 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 12:28:40,473 INFO L195 NwaCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 12:28:40,490 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:28:40,674 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:28:40,674 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 12:28:40,674 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 12:28:40,674 INFO L85 PathProgramCache]: Analyzing trace with hash -270396677, now seen corresponding path program 9 times [2022-04-28 12:28:40,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 12:28:40,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1119790667] [2022-04-28 12:28:40,675 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 12:28:40,675 INFO L85 PathProgramCache]: Analyzing trace with hash -270396677, now seen corresponding path program 10 times [2022-04-28 12:28:40,675 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 12:28:40,675 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1321026568] [2022-04-28 12:28:40,675 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 12:28:40,675 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 12:28:40,691 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 12:28:40,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2015232471] [2022-04-28 12:28:40,691 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 12:28:40,692 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 12:28:40,692 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 12:28:40,693 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:28:40,694 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:28:40,777 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 12:28:40,777 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 12:28:40,779 INFO L263 TraceCheckSpWp]: Trace formula consists of 292 conjuncts, 68 conjunts are in the unsatisfiable core [2022-04-28 12:28:40,808 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 12:28:40,810 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 12:28:42,352 INFO L272 TraceCheckUtils]: 0: Hoare triple {66730#true} call ULTIMATE.init(); {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {66730#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; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 2: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66730#true} {66730#true} #98#return; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L272 TraceCheckUtils]: 4: Hoare triple {66730#true} call #t~ret8 := main(); {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 5: Hoare triple {66730#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;havoc ~c~0;havoc ~k~0;havoc ~xy~0;havoc ~yy~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L272 TraceCheckUtils]: 6: Hoare triple {66730#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 7: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 8: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 9: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66730#true} {66730#true} #78#return; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L272 TraceCheckUtils]: 11: Hoare triple {66730#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 12: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 13: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,354 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {66730#true} {66730#true} #80#return; {66730#true} is VALID [2022-04-28 12:28:42,354 INFO L290 TraceCheckUtils]: 16: Hoare triple {66730#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1;~c~0 := 0;~k~0 := 0;~xy~0 := ~x~0 * ~y~0;~yy~0 := ~y~0 * ~y~0; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,354 INFO L272 TraceCheckUtils]: 17: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~xy~0 < 2147483647 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,354 INFO L290 TraceCheckUtils]: 18: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,354 INFO L290 TraceCheckUtils]: 19: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,354 INFO L290 TraceCheckUtils]: 20: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,355 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {66730#true} {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #82#return; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,355 INFO L272 TraceCheckUtils]: 22: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call assume_abort_if_not((if ~yy~0 < 2147483647 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,355 INFO L290 TraceCheckUtils]: 25: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,356 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {66730#true} {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #84#return; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,356 INFO L290 TraceCheckUtils]: 27: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,357 INFO L290 TraceCheckUtils]: 29: Hoare triple {66783#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,358 INFO L290 TraceCheckUtils]: 30: Hoare triple {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,358 INFO L290 TraceCheckUtils]: 31: Hoare triple {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,358 INFO L272 TraceCheckUtils]: 32: Hoare triple {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,358 INFO L290 TraceCheckUtils]: 33: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,359 INFO L290 TraceCheckUtils]: 34: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,359 INFO L290 TraceCheckUtils]: 35: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,359 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {66730#true} {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #86#return; {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,359 INFO L272 TraceCheckUtils]: 37: Hoare triple {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,360 INFO L290 TraceCheckUtils]: 38: Hoare triple {66730#true} ~cond := #in~cond; {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:28:42,360 INFO L290 TraceCheckUtils]: 39: Hoare triple {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:42,360 INFO L290 TraceCheckUtils]: 40: Hoare triple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:42,361 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} {66823#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #88#return; {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,361 INFO L272 TraceCheckUtils]: 42: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,362 INFO L290 TraceCheckUtils]: 43: Hoare triple {66730#true} ~cond := #in~cond; {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:28:42,362 INFO L290 TraceCheckUtils]: 44: Hoare triple {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:42,362 INFO L290 TraceCheckUtils]: 45: Hoare triple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:42,363 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #90#return; {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,363 INFO L272 TraceCheckUtils]: 47: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,363 INFO L290 TraceCheckUtils]: 48: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,363 INFO L290 TraceCheckUtils]: 49: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,363 INFO L290 TraceCheckUtils]: 50: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,364 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {66730#true} {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #92#return; {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,364 INFO L290 TraceCheckUtils]: 52: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 12:28:42,365 INFO L290 TraceCheckUtils]: 53: Hoare triple {66862#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 0) (= main_~xy~0 (* main_~y~0 main_~x~0)) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {66899#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,365 INFO L290 TraceCheckUtils]: 54: Hoare triple {66899#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {66899#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,366 INFO L290 TraceCheckUtils]: 55: Hoare triple {66899#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {66899#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,366 INFO L290 TraceCheckUtils]: 56: Hoare triple {66899#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,367 INFO L290 TraceCheckUtils]: 57: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,367 INFO L290 TraceCheckUtils]: 58: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,367 INFO L272 TraceCheckUtils]: 59: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,367 INFO L290 TraceCheckUtils]: 60: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,367 INFO L290 TraceCheckUtils]: 61: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,368 INFO L290 TraceCheckUtils]: 62: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,368 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {66730#true} {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,368 INFO L272 TraceCheckUtils]: 64: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,368 INFO L290 TraceCheckUtils]: 65: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,368 INFO L290 TraceCheckUtils]: 66: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,369 INFO L290 TraceCheckUtils]: 67: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,369 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {66730#true} {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,369 INFO L272 TraceCheckUtils]: 69: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,369 INFO L290 TraceCheckUtils]: 70: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,370 INFO L290 TraceCheckUtils]: 71: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,370 INFO L290 TraceCheckUtils]: 72: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,370 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {66730#true} {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,370 INFO L272 TraceCheckUtils]: 74: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,370 INFO L290 TraceCheckUtils]: 75: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,371 INFO L290 TraceCheckUtils]: 76: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,371 INFO L290 TraceCheckUtils]: 77: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,371 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {66730#true} {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,372 INFO L290 TraceCheckUtils]: 79: Hoare triple {66909#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);~c~0 := ~c~0 - ~b~0;~k~0 := 1 + ~k~0; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,372 INFO L290 TraceCheckUtils]: 80: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,373 INFO L290 TraceCheckUtils]: 81: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,373 INFO L272 TraceCheckUtils]: 82: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,373 INFO L290 TraceCheckUtils]: 83: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,373 INFO L290 TraceCheckUtils]: 84: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,373 INFO L290 TraceCheckUtils]: 85: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,374 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,374 INFO L272 TraceCheckUtils]: 87: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,374 INFO L290 TraceCheckUtils]: 88: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,374 INFO L290 TraceCheckUtils]: 89: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,374 INFO L290 TraceCheckUtils]: 90: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,375 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,375 INFO L272 TraceCheckUtils]: 92: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,375 INFO L290 TraceCheckUtils]: 93: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,375 INFO L290 TraceCheckUtils]: 94: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,375 INFO L290 TraceCheckUtils]: 95: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,376 INFO L284 TraceCheckUtils]: 96: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,376 INFO L272 TraceCheckUtils]: 97: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,376 INFO L290 TraceCheckUtils]: 98: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,376 INFO L290 TraceCheckUtils]: 99: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,376 INFO L290 TraceCheckUtils]: 100: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,377 INFO L284 TraceCheckUtils]: 101: Hoare quadruple {66730#true} {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #92#return; {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,377 INFO L290 TraceCheckUtils]: 102: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,378 INFO L290 TraceCheckUtils]: 103: Hoare triple {66979#(and (= (+ main_~c~0 main_~x~0) main_~y~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= (+ (- 1) main_~k~0) 0) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~q~0 1) (= main_~xy~0 (* main_~y~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,378 INFO L290 TraceCheckUtils]: 104: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,379 INFO L290 TraceCheckUtils]: 105: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,379 INFO L290 TraceCheckUtils]: 106: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(0 != ~b~0);~c~0 := ~a~0;~k~0 := 0; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,380 INFO L290 TraceCheckUtils]: 107: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,380 INFO L290 TraceCheckUtils]: 108: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,380 INFO L272 TraceCheckUtils]: 109: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,380 INFO L290 TraceCheckUtils]: 110: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,380 INFO L290 TraceCheckUtils]: 111: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,380 INFO L290 TraceCheckUtils]: 112: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,381 INFO L284 TraceCheckUtils]: 113: Hoare quadruple {66730#true} {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #86#return; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,381 INFO L272 TraceCheckUtils]: 114: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,381 INFO L290 TraceCheckUtils]: 115: Hoare triple {66730#true} ~cond := #in~cond; {66730#true} is VALID [2022-04-28 12:28:42,381 INFO L290 TraceCheckUtils]: 116: Hoare triple {66730#true} assume !(0 == ~cond); {66730#true} is VALID [2022-04-28 12:28:42,381 INFO L290 TraceCheckUtils]: 117: Hoare triple {66730#true} assume true; {66730#true} is VALID [2022-04-28 12:28:42,382 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {66730#true} {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #88#return; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,382 INFO L272 TraceCheckUtils]: 119: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {66730#true} is VALID [2022-04-28 12:28:42,382 INFO L290 TraceCheckUtils]: 120: Hoare triple {66730#true} ~cond := #in~cond; {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:28:42,383 INFO L290 TraceCheckUtils]: 121: Hoare triple {66851#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:42,383 INFO L290 TraceCheckUtils]: 122: Hoare triple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 12:28:42,383 INFO L284 TraceCheckUtils]: 123: Hoare quadruple {66855#(not (= |__VERIFIER_assert_#in~cond| 0))} {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} #90#return; {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} is VALID [2022-04-28 12:28:42,385 INFO L272 TraceCheckUtils]: 124: Hoare triple {67052#(and (= main_~s~0 1) (= (+ (- 1) (* (- 1) main_~q~0)) 0) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~yy~0 (* main_~y~0 main_~y~0)) (= main_~xy~0 (* main_~y~0 main_~x~0)))} call __VERIFIER_assert((if 0 == ~q~0 * ~xy~0 + ~s~0 * ~yy~0 - ~q~0 * ~x~0 - ~b~0 * ~y~0 - ~s~0 * ~y~0 + ~b~0 then 1 else 0)); {67116#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 12:28:42,386 INFO L290 TraceCheckUtils]: 125: Hoare triple {67116#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {67120#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 12:28:42,386 INFO L290 TraceCheckUtils]: 126: Hoare triple {67120#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {66731#false} is VALID [2022-04-28 12:28:42,386 INFO L290 TraceCheckUtils]: 127: Hoare triple {66731#false} assume !false; {66731#false} is VALID [2022-04-28 12:28:42,387 INFO L134 CoverageAnalysis]: Checked inductivity of 523 backedges. 69 proven. 118 refuted. 0 times theorem prover too weak. 336 trivial. 0 not checked. [2022-04-28 12:28:42,387 INFO L328 TraceCheckSpWp]: Computing backward predicates...