/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/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 05:50:36,045 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 05:50:36,047 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 05:50:36,085 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 05:50:36,086 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 05:50:36,087 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 05:50:36,092 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 05:50:36,094 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 05:50:36,096 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 05:50:36,100 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 05:50:36,100 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 05:50:36,102 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 05:50:36,102 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 05:50:36,104 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 05:50:36,104 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 05:50:36,105 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 05:50:36,106 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 05:50:36,107 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 05:50:36,110 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 05:50:36,115 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 05:50:36,116 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 05:50:36,117 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 05:50:36,118 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 05:50:36,119 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 05:50:36,120 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 05:50:36,126 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 05:50:36,126 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 05:50:36,126 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 05:50:36,127 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 05:50:36,127 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 05:50:36,128 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 05:50:36,128 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 05:50:36,130 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 05:50:36,130 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 05:50:36,131 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 05:50:36,131 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 05:50:36,132 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 05:50:36,132 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 05:50:36,132 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 05:50:36,132 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 05:50:36,133 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 05:50:36,134 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 05:50:36,135 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 05:50:36,145 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 05:50:36,146 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 05:50:36,147 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 05:50:36,147 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 05:50:36,147 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 05:50:36,147 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 05:50:36,147 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 05:50:36,147 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 05:50:36,147 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 05:50:36,148 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 05:50:36,148 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 05:50:36,148 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 05:50:36,149 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 05:50:36,149 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 05:50:36,149 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 05:50:36,149 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 05:50:36,149 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 05:50:36,149 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 05:50:36,149 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:50:36,149 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 05:50:36,150 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 05:50:36,150 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 05:50:36,150 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 05:50:36,150 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 05:50:36,150 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 05:50:36,150 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 05:50:36,351 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 05:50:36,374 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 05:50:36,376 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 05:50:36,377 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 05:50:36,378 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 05:50:36,379 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c [2022-04-28 05:50:36,430 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5222b914d/23ccbb8b43c54117b828bb780ddcc1a2/FLAG0a38f435a [2022-04-28 05:50:36,837 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 05:50:36,838 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c [2022-04-28 05:50:36,843 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5222b914d/23ccbb8b43c54117b828bb780ddcc1a2/FLAG0a38f435a [2022-04-28 05:50:36,853 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5222b914d/23ccbb8b43c54117b828bb780ddcc1a2 [2022-04-28 05:50:36,855 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 05:50:36,856 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 05:50:36,859 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 05:50:36,859 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 05:50:36,862 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 05:50:36,866 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:50:36" (1/1) ... [2022-04-28 05:50:36,867 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6f88b9cd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:36, skipping insertion in model container [2022-04-28 05:50:36,867 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 05:50:36" (1/1) ... [2022-04-28 05:50:36,873 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 05:50:36,888 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 05:50:37,068 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c[490,503] [2022-04-28 05:50:37,103 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:50:37,109 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 05:50:37,122 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/egcd3-ll_unwindbound100.c[490,503] [2022-04-28 05:50:37,135 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 05:50:37,154 INFO L208 MainTranslator]: Completed translation [2022-04-28 05:50:37,154 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37 WrapperNode [2022-04-28 05:50:37,155 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 05:50:37,156 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 05:50:37,156 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 05:50:37,156 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 05:50:37,166 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,166 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,174 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,174 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,190 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,194 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,195 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,196 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 05:50:37,197 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 05:50:37,197 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 05:50:37,197 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 05:50:37,200 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (1/1) ... [2022-04-28 05:50:37,206 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 05:50:37,215 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:37,228 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 05:50:37,248 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 05:50:37,265 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 05:50:37,266 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 05:50:37,266 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 05:50:37,266 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 05:50:37,266 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 05:50:37,266 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 05:50:37,266 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 05:50:37,266 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 05:50:37,267 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 05:50:37,267 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 05:50:37,267 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 05:50:37,268 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 05:50:37,268 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 05:50:37,268 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 05:50:37,268 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 05:50:37,268 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 05:50:37,269 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 05:50:37,269 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 05:50:37,269 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 05:50:37,269 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 05:50:37,343 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 05:50:37,345 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 05:50:37,564 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 05:50:37,570 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 05:50:37,570 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 05:50:37,571 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:50:37 BoogieIcfgContainer [2022-04-28 05:50:37,572 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 05:50:37,573 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 05:50:37,573 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 05:50:37,576 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 05:50:37,576 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 05:50:36" (1/3) ... [2022-04-28 05:50:37,576 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@64d3bbc4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:50:37, skipping insertion in model container [2022-04-28 05:50:37,576 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 05:50:37" (2/3) ... [2022-04-28 05:50:37,577 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@64d3bbc4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 05:50:37, skipping insertion in model container [2022-04-28 05:50:37,577 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 05:50:37" (3/3) ... [2022-04-28 05:50:37,578 INFO L111 eAbstractionObserver]: Analyzing ICFG egcd3-ll_unwindbound100.c [2022-04-28 05:50:37,588 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 05:50:37,588 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 05:50:37,654 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 05:50:37,659 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@35949772, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@31a99608 [2022-04-28 05:50:37,659 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 05:50:37,665 INFO L276 IsEmpty]: Start isEmpty. Operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 05:50:37,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 05:50:37,692 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:37,692 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:37,692 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:37,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:37,696 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 1 times [2022-04-28 05:50:37,705 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:37,706 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [680016892] [2022-04-28 05:50:37,722 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:37,723 INFO L85 PathProgramCache]: Analyzing trace with hash 1766263304, now seen corresponding path program 2 times [2022-04-28 05:50:37,725 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:37,726 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [334416496] [2022-04-28 05:50:37,726 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:37,726 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:37,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:37,917 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 05:50:37,926 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:37,944 INFO L290 TraceCheckUtils]: 0: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-28 05:50:37,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:50:37,945 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 05:50:37,946 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 05:50:37,958 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:37,964 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:37,966 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:37,966 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:37,966 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:50:37,966 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 11 [2022-04-28 05:50:37,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:37,978 INFO L290 TraceCheckUtils]: 0: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:37,979 INFO L290 TraceCheckUtils]: 1: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:37,979 INFO L290 TraceCheckUtils]: 2: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:37,979 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:50:37,982 INFO L272 TraceCheckUtils]: 0: Hoare triple {43#true} call ULTIMATE.init(); {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 05:50:37,982 INFO L290 TraceCheckUtils]: 1: Hoare triple {56#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {43#true} is VALID [2022-04-28 05:50:37,982 INFO L290 TraceCheckUtils]: 2: Hoare triple {43#true} assume true; {43#true} is VALID [2022-04-28 05:50:37,982 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {43#true} {43#true} #108#return; {43#true} is VALID [2022-04-28 05:50:37,983 INFO L272 TraceCheckUtils]: 4: Hoare triple {43#true} call #t~ret9 := main(); {43#true} is VALID [2022-04-28 05:50:37,983 INFO L290 TraceCheckUtils]: 5: Hoare triple {43#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {43#true} is VALID [2022-04-28 05:50:37,983 INFO L272 TraceCheckUtils]: 6: Hoare triple {43#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:50:37,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:37,985 INFO L290 TraceCheckUtils]: 8: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:37,985 INFO L290 TraceCheckUtils]: 9: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:37,986 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44#false} {43#true} #94#return; {44#false} is VALID [2022-04-28 05:50:37,986 INFO L272 TraceCheckUtils]: 11: Hoare triple {44#false} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {43#true} is VALID [2022-04-28 05:50:37,986 INFO L290 TraceCheckUtils]: 12: Hoare triple {43#true} ~cond := #in~cond; {43#true} is VALID [2022-04-28 05:50:37,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {43#true} assume 0 == ~cond;assume false; {44#false} is VALID [2022-04-28 05:50:37,987 INFO L290 TraceCheckUtils]: 14: Hoare triple {44#false} assume true; {44#false} is VALID [2022-04-28 05:50:37,987 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {44#false} {44#false} #96#return; {44#false} is VALID [2022-04-28 05:50:37,988 INFO L290 TraceCheckUtils]: 16: Hoare triple {44#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {44#false} is VALID [2022-04-28 05:50:37,988 INFO L290 TraceCheckUtils]: 17: Hoare triple {44#false} assume !true; {44#false} is VALID [2022-04-28 05:50:37,988 INFO L272 TraceCheckUtils]: 18: Hoare triple {44#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {44#false} is VALID [2022-04-28 05:50:37,988 INFO L290 TraceCheckUtils]: 19: Hoare triple {44#false} ~cond := #in~cond; {44#false} is VALID [2022-04-28 05:50:37,989 INFO L290 TraceCheckUtils]: 20: Hoare triple {44#false} assume 0 == ~cond; {44#false} is VALID [2022-04-28 05:50:37,989 INFO L290 TraceCheckUtils]: 21: Hoare triple {44#false} assume !false; {44#false} is VALID [2022-04-28 05:50:37,989 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:37,990 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:37,990 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [334416496] [2022-04-28 05:50:37,991 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [334416496] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:37,991 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:37,992 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:50:37,996 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:37,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [680016892] [2022-04-28 05:50:37,997 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [680016892] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:37,997 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:37,997 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 05:50:37,997 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [148854526] [2022-04-28 05:50:37,998 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:38,002 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 05:50:38,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:38,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:38,043 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:38,044 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 05:50:38,044 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:38,065 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 05:50:38,066 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:50:38,069 INFO L87 Difference]: Start difference. First operand has 40 states, 25 states have (on average 1.48) internal successors, (37), 26 states have internal predecessors, (37), 9 states have call successors, (9), 4 states have call predecessors, (9), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:38,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:38,267 INFO L93 Difference]: Finished difference Result 74 states and 111 transitions. [2022-04-28 05:50:38,267 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 05:50:38,267 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 05:50:38,268 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:38,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:38,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 05:50:38,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:38,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 111 transitions. [2022-04-28 05:50:38,300 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 111 transitions. [2022-04-28 05:50:38,420 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 05:50:38,433 INFO L225 Difference]: With dead ends: 74 [2022-04-28 05:50:38,433 INFO L226 Difference]: Without dead ends: 36 [2022-04-28 05:50:38,437 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 05:50:38,442 INFO L413 NwaCegarLoop]: 47 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:38,443 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 51 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:38,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-28 05:50:38,483 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 35. [2022-04-28 05:50:38,483 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:38,485 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:38,485 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:38,486 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:38,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:38,496 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 05:50:38,496 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 05:50:38,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:38,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:38,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-28 05:50:38,501 INFO L87 Difference]: Start difference. First operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 36 states. [2022-04-28 05:50:38,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:38,510 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-04-28 05:50:38,510 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 46 transitions. [2022-04-28 05:50:38,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:38,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:38,511 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:38,511 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:38,512 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:38,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 45 transitions. [2022-04-28 05:50:38,516 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 45 transitions. Word has length 22 [2022-04-28 05:50:38,516 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:38,516 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 45 transitions. [2022-04-28 05:50:38,517 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:38,517 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 45 transitions. [2022-04-28 05:50:38,565 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 05:50:38,566 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 45 transitions. [2022-04-28 05:50:38,567 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 05:50:38,567 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:38,567 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:38,567 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 05:50:38,567 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:38,569 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:38,569 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 1 times [2022-04-28 05:50:38,569 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:38,569 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1684659829] [2022-04-28 05:50:38,570 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:38,570 INFO L85 PathProgramCache]: Analyzing trace with hash -81203399, now seen corresponding path program 2 times [2022-04-28 05:50:38,570 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:38,574 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [31624560] [2022-04-28 05:50:38,574 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:38,574 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:38,605 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:38,605 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [480103761] [2022-04-28 05:50:38,605 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:38,607 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:38,607 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:38,615 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 05:50:38,650 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 05:50:38,683 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:50:38,683 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:38,701 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:50:38,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:38,719 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:38,918 INFO L272 TraceCheckUtils]: 0: Hoare triple {349#true} call ULTIMATE.init(); {349#true} is VALID [2022-04-28 05:50:38,919 INFO L290 TraceCheckUtils]: 1: Hoare triple {349#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,919 INFO L290 TraceCheckUtils]: 2: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,920 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {357#(<= ~counter~0 0)} {349#true} #108#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,921 INFO L272 TraceCheckUtils]: 4: Hoare triple {357#(<= ~counter~0 0)} call #t~ret9 := main(); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,921 INFO L290 TraceCheckUtils]: 5: Hoare triple {357#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,922 INFO L272 TraceCheckUtils]: 6: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,923 INFO L290 TraceCheckUtils]: 8: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,923 INFO L290 TraceCheckUtils]: 9: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,924 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #94#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,924 INFO L272 TraceCheckUtils]: 11: Hoare triple {357#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,925 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#(<= ~counter~0 0)} ~cond := #in~cond; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,925 INFO L290 TraceCheckUtils]: 13: Hoare triple {357#(<= ~counter~0 0)} assume !(0 == ~cond); {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,926 INFO L290 TraceCheckUtils]: 14: Hoare triple {357#(<= ~counter~0 0)} assume true; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,927 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {357#(<= ~counter~0 0)} {357#(<= ~counter~0 0)} #96#return; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,927 INFO L290 TraceCheckUtils]: 16: Hoare triple {357#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {357#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:38,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {357#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {406#(<= |main_#t~post6| 0)} is VALID [2022-04-28 05:50:38,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {406#(<= |main_#t~post6| 0)} assume !(#t~post6 < 100);havoc #t~post6; {350#false} is VALID [2022-04-28 05:50:38,929 INFO L272 TraceCheckUtils]: 19: Hoare triple {350#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {350#false} is VALID [2022-04-28 05:50:38,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {350#false} ~cond := #in~cond; {350#false} is VALID [2022-04-28 05:50:38,929 INFO L290 TraceCheckUtils]: 21: Hoare triple {350#false} assume 0 == ~cond; {350#false} is VALID [2022-04-28 05:50:38,929 INFO L290 TraceCheckUtils]: 22: Hoare triple {350#false} assume !false; {350#false} is VALID [2022-04-28 05:50:38,929 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:38,930 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:38,930 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:38,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [31624560] [2022-04-28 05:50:38,930 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:38,930 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [480103761] [2022-04-28 05:50:38,931 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [480103761] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:38,931 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:38,931 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:50:38,932 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:38,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1684659829] [2022-04-28 05:50:38,932 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1684659829] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:38,932 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:38,932 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 05:50:38,932 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1441913393] [2022-04-28 05:50:38,933 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:38,933 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:50:38,933 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:38,934 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:38,951 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:38,952 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 05:50:38,952 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:38,952 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 05:50:38,953 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:50:38,953 INFO L87 Difference]: Start difference. First operand 35 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:39,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:39,042 INFO L93 Difference]: Finished difference Result 44 states and 54 transitions. [2022-04-28 05:50:39,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 05:50:39,042 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 05:50:39,042 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:39,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:39,045 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 05:50:39,045 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:39,047 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-04-28 05:50:39,047 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-04-28 05:50:39,092 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 05:50:39,094 INFO L225 Difference]: With dead ends: 44 [2022-04-28 05:50:39,095 INFO L226 Difference]: Without dead ends: 37 [2022-04-28 05:50:39,095 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 05:50:39,096 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 0 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:39,096 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 113 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:39,097 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-28 05:50:39,110 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-28 05:50:39,110 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:39,110 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:39,111 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:39,111 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:39,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:39,114 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 05:50:39,114 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:50:39,114 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:39,114 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:39,115 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-28 05:50:39,115 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 37 states. [2022-04-28 05:50:39,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:39,118 INFO L93 Difference]: Finished difference Result 37 states and 47 transitions. [2022-04-28 05:50:39,118 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:50:39,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:39,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:39,119 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:39,119 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:39,119 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.2916666666666667) internal successors, (31), 25 states have internal predecessors, (31), 9 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 05:50:39,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-28 05:50:39,121 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 23 [2022-04-28 05:50:39,122 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:39,122 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-28 05:50:39,122 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:39,122 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 47 transitions. [2022-04-28 05:50: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 05:50:39,166 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-28 05:50:39,167 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 05:50:39,167 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:39,167 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:39,198 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 05:50:39,390 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 05:50:39,390 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:39,391 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:39,391 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 1 times [2022-04-28 05:50:39,391 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:39,391 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1127233469] [2022-04-28 05:50:39,392 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:39,392 INFO L85 PathProgramCache]: Analyzing trace with hash 1762644405, now seen corresponding path program 2 times [2022-04-28 05:50:39,392 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:39,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [670447541] [2022-04-28 05:50:39,392 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:39,392 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:39,409 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:39,409 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1900082187] [2022-04-28 05:50:39,409 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:39,409 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:39,410 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:39,416 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 05:50:39,417 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 05:50:39,458 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-28 05:50:39,458 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:39,459 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:50:39,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:39,470 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:39,675 INFO L272 TraceCheckUtils]: 0: Hoare triple {657#true} call ULTIMATE.init(); {657#true} is VALID [2022-04-28 05:50:39,675 INFO L290 TraceCheckUtils]: 1: Hoare triple {657#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {657#true} is VALID [2022-04-28 05:50:39,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:50:39,676 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {657#true} {657#true} #108#return; {657#true} is VALID [2022-04-28 05:50:39,676 INFO L272 TraceCheckUtils]: 4: Hoare triple {657#true} call #t~ret9 := main(); {657#true} is VALID [2022-04-28 05:50:39,676 INFO L290 TraceCheckUtils]: 5: Hoare triple {657#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {657#true} is VALID [2022-04-28 05:50:39,676 INFO L272 TraceCheckUtils]: 6: Hoare triple {657#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 05:50:39,676 INFO L290 TraceCheckUtils]: 7: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 05:50:39,677 INFO L290 TraceCheckUtils]: 8: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 05:50:39,677 INFO L290 TraceCheckUtils]: 9: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:50:39,677 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {657#true} {657#true} #94#return; {657#true} is VALID [2022-04-28 05:50:39,677 INFO L272 TraceCheckUtils]: 11: Hoare triple {657#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {657#true} is VALID [2022-04-28 05:50:39,677 INFO L290 TraceCheckUtils]: 12: Hoare triple {657#true} ~cond := #in~cond; {657#true} is VALID [2022-04-28 05:50:39,677 INFO L290 TraceCheckUtils]: 13: Hoare triple {657#true} assume !(0 == ~cond); {657#true} is VALID [2022-04-28 05:50:39,678 INFO L290 TraceCheckUtils]: 14: Hoare triple {657#true} assume true; {657#true} is VALID [2022-04-28 05:50:39,678 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {657#true} {657#true} #96#return; {657#true} is VALID [2022-04-28 05:50:39,678 INFO L290 TraceCheckUtils]: 16: Hoare triple {657#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:39,679 INFO L290 TraceCheckUtils]: 17: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:39,680 INFO L290 TraceCheckUtils]: 18: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:39,680 INFO L290 TraceCheckUtils]: 19: Hoare triple {710#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(0 != ~b~0); {720#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:39,681 INFO L272 TraceCheckUtils]: 20: Hoare triple {720#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~q~0 0) (= main_~y~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {724#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:39,682 INFO L290 TraceCheckUtils]: 21: Hoare triple {724#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {728#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:39,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {728#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {658#false} is VALID [2022-04-28 05:50:39,682 INFO L290 TraceCheckUtils]: 23: Hoare triple {658#false} assume !false; {658#false} is VALID [2022-04-28 05:50:39,683 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:39,683 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:39,683 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:39,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [670447541] [2022-04-28 05:50:39,683 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:39,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1900082187] [2022-04-28 05:50:39,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1900082187] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:39,684 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:39,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:39,684 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:39,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1127233469] [2022-04-28 05:50:39,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1127233469] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:39,684 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:39,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:39,685 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018851812] [2022-04-28 05:50:39,685 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:39,685 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-28 05:50:39,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:39,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:39,702 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:39,702 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:50:39,702 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:39,703 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:50:39,703 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:39,703 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:40,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:40,029 INFO L93 Difference]: Finished difference Result 57 states and 75 transitions. [2022-04-28 05:50:40,029 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:50:40,029 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 24 [2022-04-28 05:50:40,029 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:40,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:40,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:50:40,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:40,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 75 transitions. [2022-04-28 05:50:40,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 75 transitions. [2022-04-28 05:50:40,103 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:40,105 INFO L225 Difference]: With dead ends: 57 [2022-04-28 05:50:40,105 INFO L226 Difference]: Without dead ends: 54 [2022-04-28 05:50:40,105 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:50:40,106 INFO L413 NwaCegarLoop]: 40 mSDtfsCounter, 18 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 169 SdHoareTripleChecker+Invalid, 73 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:40,106 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 169 Invalid, 73 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:40,106 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-28 05:50:40,133 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-28 05:50:40,133 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:40,135 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,135 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,136 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:40,140 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 05:50:40,140 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 05:50:40,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:40,147 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:40,147 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-28 05:50:40,148 INFO L87 Difference]: Start difference. First operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 54 states. [2022-04-28 05:50:40,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:40,154 INFO L93 Difference]: Finished difference Result 54 states and 71 transitions. [2022-04-28 05:50:40,155 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 71 transitions. [2022-04-28 05:50:40,155 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:40,156 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:40,159 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:40,159 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:40,160 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 35 states have (on average 1.3142857142857143) internal successors, (46), 36 states have internal predecessors, (46), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,165 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 70 transitions. [2022-04-28 05:50:40,165 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 70 transitions. Word has length 24 [2022-04-28 05:50:40,165 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:40,165 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 70 transitions. [2022-04-28 05:50:40,166 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.6) internal successors, (13), 5 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:40,166 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 53 states and 70 transitions. [2022-04-28 05:50:40,234 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 05:50:40,234 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-28 05:50:40,234 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 05:50:40,235 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:40,235 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:40,260 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 05:50:40,451 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 05:50:40,451 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:40,451 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:40,452 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 1 times [2022-04-28 05:50:40,452 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:40,452 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [633478971] [2022-04-28 05:50:40,452 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:40,452 INFO L85 PathProgramCache]: Analyzing trace with hash -1090347867, now seen corresponding path program 2 times [2022-04-28 05:50:40,452 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:40,453 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1636901430] [2022-04-28 05:50:40,453 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:40,453 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:40,473 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:40,473 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1466966228] [2022-04-28 05:50:40,473 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:40,473 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:40,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:40,474 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 05:50:40,504 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 05:50:40,550 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:40,551 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:40,551 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:50:40,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:40,568 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:40,706 INFO L272 TraceCheckUtils]: 0: Hoare triple {1066#true} call ULTIMATE.init(); {1066#true} is VALID [2022-04-28 05:50:40,706 INFO L290 TraceCheckUtils]: 1: Hoare triple {1066#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,707 INFO L290 TraceCheckUtils]: 2: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,707 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1074#(<= ~counter~0 0)} {1066#true} #108#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,708 INFO L272 TraceCheckUtils]: 4: Hoare triple {1074#(<= ~counter~0 0)} call #t~ret9 := main(); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,708 INFO L290 TraceCheckUtils]: 5: Hoare triple {1074#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,709 INFO L272 TraceCheckUtils]: 6: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,709 INFO L290 TraceCheckUtils]: 7: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,711 INFO L290 TraceCheckUtils]: 8: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,711 INFO L290 TraceCheckUtils]: 9: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,711 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #94#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,712 INFO L272 TraceCheckUtils]: 11: Hoare triple {1074#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,712 INFO L290 TraceCheckUtils]: 12: Hoare triple {1074#(<= ~counter~0 0)} ~cond := #in~cond; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,713 INFO L290 TraceCheckUtils]: 13: Hoare triple {1074#(<= ~counter~0 0)} assume !(0 == ~cond); {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,713 INFO L290 TraceCheckUtils]: 14: Hoare triple {1074#(<= ~counter~0 0)} assume true; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,714 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1074#(<= ~counter~0 0)} {1074#(<= ~counter~0 0)} #96#return; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,714 INFO L290 TraceCheckUtils]: 16: Hoare triple {1074#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1074#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:40,715 INFO L290 TraceCheckUtils]: 17: Hoare triple {1074#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:40,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {1123#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:40,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {1123#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1123#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:40,716 INFO L290 TraceCheckUtils]: 20: Hoare triple {1123#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1133#(<= |main_#t~post7| 1)} is VALID [2022-04-28 05:50:40,716 INFO L290 TraceCheckUtils]: 21: Hoare triple {1133#(<= |main_#t~post7| 1)} assume !(#t~post7 < 100);havoc #t~post7; {1067#false} is VALID [2022-04-28 05:50:40,716 INFO L290 TraceCheckUtils]: 22: Hoare triple {1067#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1067#false} is VALID [2022-04-28 05:50:40,717 INFO L290 TraceCheckUtils]: 23: Hoare triple {1067#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1067#false} is VALID [2022-04-28 05:50:40,717 INFO L290 TraceCheckUtils]: 24: Hoare triple {1067#false} assume !(#t~post6 < 100);havoc #t~post6; {1067#false} is VALID [2022-04-28 05:50:40,717 INFO L272 TraceCheckUtils]: 25: Hoare triple {1067#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1067#false} is VALID [2022-04-28 05:50:40,717 INFO L290 TraceCheckUtils]: 26: Hoare triple {1067#false} ~cond := #in~cond; {1067#false} is VALID [2022-04-28 05:50:40,717 INFO L290 TraceCheckUtils]: 27: Hoare triple {1067#false} assume 0 == ~cond; {1067#false} is VALID [2022-04-28 05:50:40,717 INFO L290 TraceCheckUtils]: 28: Hoare triple {1067#false} assume !false; {1067#false} is VALID [2022-04-28 05:50:40,718 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:40,718 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:40,718 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:40,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1636901430] [2022-04-28 05:50:40,718 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:40,718 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1466966228] [2022-04-28 05:50:40,718 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1466966228] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:40,719 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:40,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:40,719 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:40,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [633478971] [2022-04-28 05:50:40,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [633478971] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:40,719 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:40,719 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:40,719 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1163769105] [2022-04-28 05:50:40,720 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:40,720 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 05:50:40,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:40,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:40,740 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:40,740 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:50:40,740 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:40,740 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:50:40,741 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:40,741 INFO L87 Difference]: Start difference. First operand 53 states and 70 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:40,870 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:40,870 INFO L93 Difference]: Finished difference Result 77 states and 104 transitions. [2022-04-28 05:50:40,870 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:50:40,871 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 29 [2022-04-28 05:50:40,871 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:40,871 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:40,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 05:50:40,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:40,879 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 82 transitions. [2022-04-28 05:50:40,879 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 82 transitions. [2022-04-28 05:50:40,951 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 05:50:40,953 INFO L225 Difference]: With dead ends: 77 [2022-04-28 05:50:40,953 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 05:50:40,954 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:40,954 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 6 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:40,955 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 139 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:40,955 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 05:50:40,973 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 55. [2022-04-28 05:50:40,973 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:40,973 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,974 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,974 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:40,977 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 05:50:40,977 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:50:40,977 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:40,977 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:40,977 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-28 05:50:40,978 INFO L87 Difference]: Start difference. First operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 55 states. [2022-04-28 05:50:40,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:40,980 INFO L93 Difference]: Finished difference Result 55 states and 72 transitions. [2022-04-28 05:50:40,981 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:50:40,981 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:40,981 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:40,981 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:40,981 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:40,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 37 states have (on average 1.2972972972972974) internal successors, (48), 38 states have internal predecessors, (48), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:40,984 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 72 transitions. [2022-04-28 05:50:40,984 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 72 transitions. Word has length 29 [2022-04-28 05:50:40,984 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:40,984 INFO L495 AbstractCegarLoop]: Abstraction has 55 states and 72 transitions. [2022-04-28 05:50:40,984 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:40,985 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 55 states and 72 transitions. [2022-04-28 05:50:41,044 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:41,045 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 72 transitions. [2022-04-28 05:50:41,045 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-28 05:50:41,045 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:41,046 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:41,067 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 05:50:41,259 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 05:50:41,259 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:41,260 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:41,260 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 1 times [2022-04-28 05:50:41,260 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:41,260 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1411722004] [2022-04-28 05:50:41,260 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:41,261 INFO L85 PathProgramCache]: Analyzing trace with hash 979890972, now seen corresponding path program 2 times [2022-04-28 05:50:41,261 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:41,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1649897300] [2022-04-28 05:50:41,261 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:41,261 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:41,286 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:41,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [195224620] [2022-04-28 05:50:41,286 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:41,287 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:41,287 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:41,297 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 05:50:41,299 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 05:50:41,347 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:41,348 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:41,348 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:50:41,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:41,360 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:41,526 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 05:50:41,527 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1539#(<= ~counter~0 0)} {1531#true} #108#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {1539#(<= ~counter~0 0)} call #t~ret9 := main(); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,529 INFO L290 TraceCheckUtils]: 5: Hoare triple {1539#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,530 INFO L272 TraceCheckUtils]: 6: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,531 INFO L290 TraceCheckUtils]: 7: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,531 INFO L290 TraceCheckUtils]: 8: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,532 INFO L290 TraceCheckUtils]: 9: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,533 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #94#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,539 INFO L272 TraceCheckUtils]: 11: Hoare triple {1539#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,540 INFO L290 TraceCheckUtils]: 12: Hoare triple {1539#(<= ~counter~0 0)} ~cond := #in~cond; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,540 INFO L290 TraceCheckUtils]: 13: Hoare triple {1539#(<= ~counter~0 0)} assume !(0 == ~cond); {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,540 INFO L290 TraceCheckUtils]: 14: Hoare triple {1539#(<= ~counter~0 0)} assume true; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,541 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1539#(<= ~counter~0 0)} {1539#(<= ~counter~0 0)} #96#return; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,541 INFO L290 TraceCheckUtils]: 16: Hoare triple {1539#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1539#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:41,542 INFO L290 TraceCheckUtils]: 17: Hoare triple {1539#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:41,542 INFO L290 TraceCheckUtils]: 18: Hoare triple {1588#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:41,543 INFO L290 TraceCheckUtils]: 19: Hoare triple {1588#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1588#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:41,543 INFO L290 TraceCheckUtils]: 20: Hoare triple {1588#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:41,544 INFO L290 TraceCheckUtils]: 21: Hoare triple {1598#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:41,544 INFO L290 TraceCheckUtils]: 22: Hoare triple {1598#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:41,544 INFO L290 TraceCheckUtils]: 23: Hoare triple {1598#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {1598#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:41,545 INFO L290 TraceCheckUtils]: 24: Hoare triple {1598#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1611#(<= |main_#t~post6| 2)} is VALID [2022-04-28 05:50:41,545 INFO L290 TraceCheckUtils]: 25: Hoare triple {1611#(<= |main_#t~post6| 2)} assume !(#t~post6 < 100);havoc #t~post6; {1532#false} is VALID [2022-04-28 05:50:41,546 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1532#false} is VALID [2022-04-28 05:50:41,546 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 05:50:41,546 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 05:50:41,546 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 05:50:41,546 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:41,546 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:41,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {1532#false} assume !false; {1532#false} is VALID [2022-04-28 05:50:41,756 INFO L290 TraceCheckUtils]: 28: Hoare triple {1532#false} assume 0 == ~cond; {1532#false} is VALID [2022-04-28 05:50:41,756 INFO L290 TraceCheckUtils]: 27: Hoare triple {1532#false} ~cond := #in~cond; {1532#false} is VALID [2022-04-28 05:50:41,756 INFO L272 TraceCheckUtils]: 26: Hoare triple {1532#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {1532#false} is VALID [2022-04-28 05:50:41,757 INFO L290 TraceCheckUtils]: 25: Hoare triple {1639#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {1532#false} is VALID [2022-04-28 05:50:41,757 INFO L290 TraceCheckUtils]: 24: Hoare triple {1643#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1639#(< |main_#t~post6| 100)} is VALID [2022-04-28 05:50:41,758 INFO L290 TraceCheckUtils]: 23: Hoare triple {1643#(< ~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; {1643#(< ~counter~0 100)} is VALID [2022-04-28 05:50:41,758 INFO L290 TraceCheckUtils]: 22: Hoare triple {1643#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {1643#(< ~counter~0 100)} is VALID [2022-04-28 05:50:41,758 INFO L290 TraceCheckUtils]: 21: Hoare triple {1643#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {1643#(< ~counter~0 100)} is VALID [2022-04-28 05:50:41,759 INFO L290 TraceCheckUtils]: 20: Hoare triple {1656#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1643#(< ~counter~0 100)} is VALID [2022-04-28 05:50:41,759 INFO L290 TraceCheckUtils]: 19: Hoare triple {1656#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {1656#(< ~counter~0 99)} is VALID [2022-04-28 05:50:41,760 INFO L290 TraceCheckUtils]: 18: Hoare triple {1656#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {1656#(< ~counter~0 99)} is VALID [2022-04-28 05:50:41,760 INFO L290 TraceCheckUtils]: 17: Hoare triple {1666#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1656#(< ~counter~0 99)} is VALID [2022-04-28 05:50:41,761 INFO L290 TraceCheckUtils]: 16: Hoare triple {1666#(< ~counter~0 98)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,762 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1531#true} {1666#(< ~counter~0 98)} #96#return; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,762 INFO L290 TraceCheckUtils]: 14: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 05:50:41,762 INFO L290 TraceCheckUtils]: 13: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 05:50:41,762 INFO L290 TraceCheckUtils]: 12: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 05:50:41,762 INFO L272 TraceCheckUtils]: 11: Hoare triple {1666#(< ~counter~0 98)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 05:50:41,763 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1531#true} {1666#(< ~counter~0 98)} #94#return; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,763 INFO L290 TraceCheckUtils]: 9: Hoare triple {1531#true} assume true; {1531#true} is VALID [2022-04-28 05:50:41,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {1531#true} assume !(0 == ~cond); {1531#true} is VALID [2022-04-28 05:50:41,763 INFO L290 TraceCheckUtils]: 7: Hoare triple {1531#true} ~cond := #in~cond; {1531#true} is VALID [2022-04-28 05:50:41,763 INFO L272 TraceCheckUtils]: 6: Hoare triple {1666#(< ~counter~0 98)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {1531#true} is VALID [2022-04-28 05:50:41,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {1666#(< ~counter~0 98)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,764 INFO L272 TraceCheckUtils]: 4: Hoare triple {1666#(< ~counter~0 98)} call #t~ret9 := main(); {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1666#(< ~counter~0 98)} {1531#true} #108#return; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {1666#(< ~counter~0 98)} assume true; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,766 INFO L290 TraceCheckUtils]: 1: Hoare triple {1531#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1666#(< ~counter~0 98)} is VALID [2022-04-28 05:50:41,766 INFO L272 TraceCheckUtils]: 0: Hoare triple {1531#true} call ULTIMATE.init(); {1531#true} is VALID [2022-04-28 05:50:41,767 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:41,767 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:41,769 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1649897300] [2022-04-28 05:50:41,769 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:41,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [195224620] [2022-04-28 05:50:41,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [195224620] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:41,770 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:41,770 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-28 05:50:41,771 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:41,771 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1411722004] [2022-04-28 05:50:41,771 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1411722004] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:41,771 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:41,771 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:41,771 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1373704315] [2022-04-28 05:50:41,771 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:41,772 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-28 05:50:41,773 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:41,773 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:41,795 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 05:50:41,795 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:50:41,795 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:41,796 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:50:41,796 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-28 05:50:41,796 INFO L87 Difference]: Start difference. First operand 55 states and 72 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:41,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:41,950 INFO L93 Difference]: Finished difference Result 67 states and 85 transitions. [2022-04-28 05:50:41,950 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-28 05:50:41,950 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 30 [2022-04-28 05:50:41,950 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:41,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:41,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 05:50:41,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:41,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 63 transitions. [2022-04-28 05:50:41,953 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 63 transitions. [2022-04-28 05:50:42,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:42,002 INFO L225 Difference]: With dead ends: 67 [2022-04-28 05:50:42,002 INFO L226 Difference]: Without dead ends: 60 [2022-04-28 05:50:42,003 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:50:42,004 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 8 mSDsluCounter, 124 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 165 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:42,004 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 165 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:42,004 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-28 05:50:42,027 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 59. [2022-04-28 05:50:42,027 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:42,027 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:42,027 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:42,028 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:42,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:42,030 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 05:50:42,030 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 05:50:42,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:42,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:42,031 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-28 05:50:42,031 INFO L87 Difference]: Start difference. First operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 60 states. [2022-04-28 05:50:42,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:42,034 INFO L93 Difference]: Finished difference Result 60 states and 78 transitions. [2022-04-28 05:50:42,034 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 78 transitions. [2022-04-28 05:50:42,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:42,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:42,034 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:42,034 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:42,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-28 05:50:42,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 77 transitions. [2022-04-28 05:50:42,037 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 77 transitions. Word has length 30 [2022-04-28 05:50:42,037 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:42,037 INFO L495 AbstractCegarLoop]: Abstraction has 59 states and 77 transitions. [2022-04-28 05:50:42,037 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:42,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 59 states and 77 transitions. [2022-04-28 05:50:42,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:42,114 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 77 transitions. [2022-04-28 05:50:42,114 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 05:50:42,114 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:42,114 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:42,143 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 05:50:42,315 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 05:50:42,315 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:42,316 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:42,316 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 1 times [2022-04-28 05:50:42,316 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:42,316 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [561912773] [2022-04-28 05:50:42,316 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:42,317 INFO L85 PathProgramCache]: Analyzing trace with hash 296831538, now seen corresponding path program 2 times [2022-04-28 05:50:42,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:42,317 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1341850280] [2022-04-28 05:50:42,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:42,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:42,335 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:42,335 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [874045866] [2022-04-28 05:50:42,335 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:42,335 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:42,335 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:42,337 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 05:50:42,339 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 05:50:42,385 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:42,386 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:42,386 INFO L263 TraceCheckSpWp]: Trace formula consists of 131 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:50:42,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:42,398 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:42,561 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 05:50:42,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2094#true} is VALID [2022-04-28 05:50:42,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:42,562 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 05:50:42,562 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 05:50:42,562 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-28 05:50:42,563 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:42,564 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:42,565 INFO L290 TraceCheckUtils]: 8: Hoare triple {2120#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:42,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:42,566 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:42,566 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:42,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 05:50:42,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 05:50:42,566 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:42,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:42,569 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:42,569 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:42,570 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:42,570 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,571 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,571 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,571 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,572 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:42,572 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:42,573 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:42,573 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 05:50:42,573 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {2095#false} is VALID [2022-04-28 05:50:42,573 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 05:50:42,573 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 05:50:42,574 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 05:50:42,574 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:50:42,574 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:42,797 INFO L290 TraceCheckUtils]: 30: Hoare triple {2095#false} assume !false; {2095#false} is VALID [2022-04-28 05:50:42,798 INFO L290 TraceCheckUtils]: 29: Hoare triple {2095#false} assume 0 == ~cond; {2095#false} is VALID [2022-04-28 05:50:42,798 INFO L290 TraceCheckUtils]: 28: Hoare triple {2095#false} ~cond := #in~cond; {2095#false} is VALID [2022-04-28 05:50:42,798 INFO L272 TraceCheckUtils]: 27: Hoare triple {2095#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {2095#false} is VALID [2022-04-28 05:50:42,798 INFO L290 TraceCheckUtils]: 26: Hoare triple {2173#(<= 1 main_~b~0)} assume !(0 != ~b~0); {2095#false} is VALID [2022-04-28 05:50:42,799 INFO L290 TraceCheckUtils]: 25: Hoare triple {2173#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:42,799 INFO L290 TraceCheckUtils]: 24: Hoare triple {2173#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:42,800 INFO L290 TraceCheckUtils]: 23: Hoare triple {2160#(<= 1 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {2173#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:42,800 INFO L290 TraceCheckUtils]: 22: Hoare triple {2160#(<= 1 main_~c~0)} assume !(~c~0 >= ~b~0); {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,800 INFO L290 TraceCheckUtils]: 21: Hoare triple {2160#(<= 1 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,801 INFO L290 TraceCheckUtils]: 20: Hoare triple {2160#(<= 1 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,801 INFO L290 TraceCheckUtils]: 19: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {2160#(<= 1 main_~c~0)} is VALID [2022-04-28 05:50:42,801 INFO L290 TraceCheckUtils]: 18: Hoare triple {2150#(<= 1 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:42,802 INFO L290 TraceCheckUtils]: 17: Hoare triple {2150#(<= 1 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:42,802 INFO L290 TraceCheckUtils]: 16: Hoare triple {2131#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {2150#(<= 1 main_~a~0)} is VALID [2022-04-28 05:50:42,803 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2094#true} {2131#(<= 1 main_~x~0)} #96#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:42,803 INFO L290 TraceCheckUtils]: 14: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:42,803 INFO L290 TraceCheckUtils]: 13: Hoare triple {2094#true} assume !(0 == ~cond); {2094#true} is VALID [2022-04-28 05:50:42,803 INFO L290 TraceCheckUtils]: 12: Hoare triple {2094#true} ~cond := #in~cond; {2094#true} is VALID [2022-04-28 05:50:42,803 INFO L272 TraceCheckUtils]: 11: Hoare triple {2131#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:42,804 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} {2094#true} #94#return; {2131#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:42,804 INFO L290 TraceCheckUtils]: 9: Hoare triple {2124#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:42,805 INFO L290 TraceCheckUtils]: 8: Hoare triple {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} assume !(0 == ~cond); {2124#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:42,805 INFO L290 TraceCheckUtils]: 7: Hoare triple {2094#true} ~cond := #in~cond; {2264#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-28 05:50:42,805 INFO L272 TraceCheckUtils]: 6: Hoare triple {2094#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {2094#true} is VALID [2022-04-28 05:50:42,805 INFO L290 TraceCheckUtils]: 5: Hoare triple {2094#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2094#true} is VALID [2022-04-28 05:50:42,805 INFO L272 TraceCheckUtils]: 4: Hoare triple {2094#true} call #t~ret9 := main(); {2094#true} is VALID [2022-04-28 05:50:42,805 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2094#true} {2094#true} #108#return; {2094#true} is VALID [2022-04-28 05:50:42,806 INFO L290 TraceCheckUtils]: 2: Hoare triple {2094#true} assume true; {2094#true} is VALID [2022-04-28 05:50:42,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {2094#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2094#true} is VALID [2022-04-28 05:50:42,806 INFO L272 TraceCheckUtils]: 0: Hoare triple {2094#true} call ULTIMATE.init(); {2094#true} is VALID [2022-04-28 05:50:42,807 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:50:42,807 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:42,807 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1341850280] [2022-04-28 05:50:42,807 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:42,807 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [874045866] [2022-04-28 05:50:42,807 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [874045866] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:42,807 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:42,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:50:42,808 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:42,808 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [561912773] [2022-04-28 05:50:42,808 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [561912773] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:42,808 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:42,808 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:50:42,808 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [443302316] [2022-04-28 05:50:42,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:42,809 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 05:50:42,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:42,810 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:42,831 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:42,831 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:50:42,831 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:42,832 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:50:42,833 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:50:42,833 INFO L87 Difference]: Start difference. First operand 59 states and 77 transitions. Second operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:43,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:43,659 INFO L93 Difference]: Finished difference Result 138 states and 201 transitions. [2022-04-28 05:50:43,659 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:50:43,660 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-04-28 05:50:43,660 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:43,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:43,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 05:50:43,665 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:43,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 155 transitions. [2022-04-28 05:50:43,669 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 155 transitions. [2022-04-28 05:50:43,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:43,812 INFO L225 Difference]: With dead ends: 138 [2022-04-28 05:50:43,812 INFO L226 Difference]: Without dead ends: 131 [2022-04-28 05:50:43,813 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 68 GetRequests, 53 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 17 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=180, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:50:43,813 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 115 mSDsluCounter, 234 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 119 SdHoareTripleChecker+Valid, 298 SdHoareTripleChecker+Invalid, 217 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:43,814 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [119 Valid, 298 Invalid, 217 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:50:43,814 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2022-04-28 05:50:43,924 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 88. [2022-04-28 05:50:43,924 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:43,924 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:43,925 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:43,925 INFO L87 Difference]: Start difference. First operand 131 states. Second operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:43,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:43,931 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 05:50:43,932 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 05:50:43,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:43,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:43,933 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 05:50:43,933 INFO L87 Difference]: Start difference. First operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 131 states. [2022-04-28 05:50:43,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:43,939 INFO L93 Difference]: Finished difference Result 131 states and 193 transitions. [2022-04-28 05:50:43,939 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 193 transitions. [2022-04-28 05:50:43,949 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:43,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:43,950 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:43,950 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:43,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 66 states have (on average 1.3636363636363635) internal successors, (90), 67 states have internal predecessors, (90), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:43,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 122 transitions. [2022-04-28 05:50:43,954 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 122 transitions. Word has length 31 [2022-04-28 05:50:43,954 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:43,954 INFO L495 AbstractCegarLoop]: Abstraction has 88 states and 122 transitions. [2022-04-28 05:50:43,954 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.875) internal successors, (23), 7 states have internal predecessors, (23), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:43,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 88 states and 122 transitions. [2022-04-28 05:50:44,082 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:44,082 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 122 transitions. [2022-04-28 05:50:44,083 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 05:50:44,083 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:44,083 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:44,107 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 05:50:44,291 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 05:50:44,291 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:44,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:44,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 1 times [2022-04-28 05:50:44,292 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:44,292 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [84933166] [2022-04-28 05:50:44,293 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:44,293 INFO L85 PathProgramCache]: Analyzing trace with hash 1911367052, now seen corresponding path program 2 times [2022-04-28 05:50:44,293 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:44,293 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1707115822] [2022-04-28 05:50:44,293 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:44,293 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:44,310 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:44,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [104086399] [2022-04-28 05:50:44,310 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:44,311 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:44,311 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:44,312 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 05:50:44,328 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 05:50:44,363 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:44,363 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:44,364 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 05:50:44,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:44,374 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:44,556 INFO L272 TraceCheckUtils]: 0: Hoare triple {3016#true} call ULTIMATE.init(); {3016#true} is VALID [2022-04-28 05:50:44,557 INFO L290 TraceCheckUtils]: 1: Hoare triple {3016#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,557 INFO L290 TraceCheckUtils]: 2: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,558 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3024#(<= ~counter~0 0)} {3016#true} #108#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,558 INFO L272 TraceCheckUtils]: 4: Hoare triple {3024#(<= ~counter~0 0)} call #t~ret9 := main(); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,558 INFO L290 TraceCheckUtils]: 5: Hoare triple {3024#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,559 INFO L272 TraceCheckUtils]: 6: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,559 INFO L290 TraceCheckUtils]: 7: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,559 INFO L290 TraceCheckUtils]: 8: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,560 INFO L290 TraceCheckUtils]: 9: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,560 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #94#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,561 INFO L272 TraceCheckUtils]: 11: Hoare triple {3024#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,565 INFO L290 TraceCheckUtils]: 12: Hoare triple {3024#(<= ~counter~0 0)} ~cond := #in~cond; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {3024#(<= ~counter~0 0)} assume !(0 == ~cond); {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,566 INFO L290 TraceCheckUtils]: 14: Hoare triple {3024#(<= ~counter~0 0)} assume true; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3024#(<= ~counter~0 0)} {3024#(<= ~counter~0 0)} #96#return; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {3024#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3024#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:44,570 INFO L290 TraceCheckUtils]: 17: Hoare triple {3024#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:44,570 INFO L290 TraceCheckUtils]: 18: Hoare triple {3073#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:44,570 INFO L290 TraceCheckUtils]: 19: Hoare triple {3073#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3073#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:44,571 INFO L290 TraceCheckUtils]: 20: Hoare triple {3073#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:44,571 INFO L290 TraceCheckUtils]: 21: Hoare triple {3083#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:44,572 INFO L290 TraceCheckUtils]: 22: Hoare triple {3083#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {3083#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:44,572 INFO L290 TraceCheckUtils]: 23: Hoare triple {3083#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {3093#(<= |main_#t~post8| 2)} is VALID [2022-04-28 05:50:44,575 INFO L290 TraceCheckUtils]: 24: Hoare triple {3093#(<= |main_#t~post8| 2)} assume !(#t~post8 < 100);havoc #t~post8; {3017#false} is VALID [2022-04-28 05:50:44,575 INFO L290 TraceCheckUtils]: 25: Hoare triple {3017#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {3017#false} is VALID [2022-04-28 05:50:44,575 INFO L290 TraceCheckUtils]: 26: Hoare triple {3017#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3017#false} is VALID [2022-04-28 05:50:44,575 INFO L290 TraceCheckUtils]: 27: Hoare triple {3017#false} assume !(#t~post7 < 100);havoc #t~post7; {3017#false} is VALID [2022-04-28 05:50:44,575 INFO L290 TraceCheckUtils]: 28: Hoare triple {3017#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L290 TraceCheckUtils]: 29: Hoare triple {3017#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L290 TraceCheckUtils]: 30: Hoare triple {3017#false} assume !(#t~post6 < 100);havoc #t~post6; {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L272 TraceCheckUtils]: 31: Hoare triple {3017#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L290 TraceCheckUtils]: 32: Hoare triple {3017#false} ~cond := #in~cond; {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L290 TraceCheckUtils]: 33: Hoare triple {3017#false} assume 0 == ~cond; {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L290 TraceCheckUtils]: 34: Hoare triple {3017#false} assume !false; {3017#false} is VALID [2022-04-28 05:50:44,576 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:44,577 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:44,577 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:44,577 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1707115822] [2022-04-28 05:50:44,577 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:44,577 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [104086399] [2022-04-28 05:50:44,577 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [104086399] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:44,577 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:44,577 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:44,578 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:44,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [84933166] [2022-04-28 05:50:44,578 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [84933166] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:44,578 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:44,578 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 05:50:44,578 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [532317678] [2022-04-28 05:50:44,578 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:44,579 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-28 05:50:44,579 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:44,579 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:44,603 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 05:50:44,603 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 05:50:44,603 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:44,603 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 05:50:44,604 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:44,604 INFO L87 Difference]: Start difference. First operand 88 states and 122 transitions. Second operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:44,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:44,819 INFO L93 Difference]: Finished difference Result 127 states and 178 transitions. [2022-04-28 05:50:44,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:50:44,819 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 35 [2022-04-28 05:50:44,820 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:44,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:44,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 05:50:44,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:44,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 88 transitions. [2022-04-28 05:50:44,824 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 88 transitions. [2022-04-28 05:50:44,897 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:44,899 INFO L225 Difference]: With dead ends: 127 [2022-04-28 05:50:44,899 INFO L226 Difference]: Without dead ends: 90 [2022-04-28 05:50:44,900 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 30 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:44,901 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 18 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 139 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 18 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:44,901 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [10 Valid, 139 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 18 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:44,902 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 90 states. [2022-04-28 05:50:45,055 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 90 to 90. [2022-04-28 05:50:45,056 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:45,056 INFO L82 GeneralOperation]: Start isEquivalent. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:45,056 INFO L74 IsIncluded]: Start isIncluded. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:45,057 INFO L87 Difference]: Start difference. First operand 90 states. Second operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:45,061 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:45,061 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 05:50:45,061 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:50:45,062 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:45,062 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:45,063 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 05:50:45,063 INFO L87 Difference]: Start difference. First operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 90 states. [2022-04-28 05:50:45,066 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:45,066 INFO L93 Difference]: Finished difference Result 90 states and 124 transitions. [2022-04-28 05:50:45,066 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:50:45,067 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:45,067 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:45,067 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:45,067 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:45,067 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 69 states have internal predecessors, (92), 17 states have call successors, (17), 5 states have call predecessors, (17), 4 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-04-28 05:50:45,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 124 transitions. [2022-04-28 05:50:45,070 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 124 transitions. Word has length 35 [2022-04-28 05:50:45,070 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:45,070 INFO L495 AbstractCegarLoop]: Abstraction has 90 states and 124 transitions. [2022-04-28 05:50:45,071 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.0) internal successors, (24), 5 states have internal predecessors, (24), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:45,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 90 states and 124 transitions. [2022-04-28 05:50:45,183 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:45,183 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 124 transitions. [2022-04-28 05:50:45,185 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 05:50:45,185 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:45,185 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:45,202 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 05:50:45,391 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 05:50:45,392 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:45,392 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:45,392 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 1 times [2022-04-28 05:50:45,392 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:45,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [731777095] [2022-04-28 05:50:45,393 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:45,393 INFO L85 PathProgramCache]: Analyzing trace with hash -304485816, now seen corresponding path program 2 times [2022-04-28 05:50:45,393 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:45,393 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [219298477] [2022-04-28 05:50:45,393 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:45,393 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:45,420 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:45,420 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [464938077] [2022-04-28 05:50:45,420 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:45,420 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:45,420 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:45,421 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 05:50:45,431 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 05:50:45,472 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:45,473 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:45,473 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 05:50:45,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:45,492 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:45,685 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 05:50:45,685 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,686 INFO L290 TraceCheckUtils]: 2: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,686 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3748#(<= ~counter~0 0)} {3740#true} #108#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,686 INFO L272 TraceCheckUtils]: 4: Hoare triple {3748#(<= ~counter~0 0)} call #t~ret9 := main(); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,687 INFO L290 TraceCheckUtils]: 5: Hoare triple {3748#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,687 INFO L272 TraceCheckUtils]: 6: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,687 INFO L290 TraceCheckUtils]: 7: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,688 INFO L290 TraceCheckUtils]: 8: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #94#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,691 INFO L272 TraceCheckUtils]: 11: Hoare triple {3748#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,691 INFO L290 TraceCheckUtils]: 12: Hoare triple {3748#(<= ~counter~0 0)} ~cond := #in~cond; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,691 INFO L290 TraceCheckUtils]: 13: Hoare triple {3748#(<= ~counter~0 0)} assume !(0 == ~cond); {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,692 INFO L290 TraceCheckUtils]: 14: Hoare triple {3748#(<= ~counter~0 0)} assume true; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,692 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3748#(<= ~counter~0 0)} {3748#(<= ~counter~0 0)} #96#return; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,692 INFO L290 TraceCheckUtils]: 16: Hoare triple {3748#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3748#(<= ~counter~0 0)} is VALID [2022-04-28 05:50:45,693 INFO L290 TraceCheckUtils]: 17: Hoare triple {3748#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:45,693 INFO L290 TraceCheckUtils]: 18: Hoare triple {3797#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:45,693 INFO L290 TraceCheckUtils]: 19: Hoare triple {3797#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3797#(<= ~counter~0 1)} is VALID [2022-04-28 05:50:45,694 INFO L290 TraceCheckUtils]: 20: Hoare triple {3797#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:45,694 INFO L290 TraceCheckUtils]: 21: Hoare triple {3807#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:45,694 INFO L290 TraceCheckUtils]: 22: Hoare triple {3807#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:45,695 INFO L290 TraceCheckUtils]: 23: Hoare triple {3807#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3807#(<= ~counter~0 2)} is VALID [2022-04-28 05:50:45,695 INFO L290 TraceCheckUtils]: 24: Hoare triple {3807#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:50:45,696 INFO L290 TraceCheckUtils]: 25: Hoare triple {3820#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:50:45,696 INFO L290 TraceCheckUtils]: 26: Hoare triple {3820#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3820#(<= ~counter~0 3)} is VALID [2022-04-28 05:50:45,696 INFO L290 TraceCheckUtils]: 27: Hoare triple {3820#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3830#(<= |main_#t~post7| 3)} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 28: Hoare triple {3830#(<= |main_#t~post7| 3)} assume !(#t~post7 < 100);havoc #t~post7; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 100);havoc #t~post6; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 05:50:45,697 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:45,698 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:45,931 INFO L290 TraceCheckUtils]: 35: Hoare triple {3741#false} assume !false; {3741#false} is VALID [2022-04-28 05:50:45,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {3741#false} assume 0 == ~cond; {3741#false} is VALID [2022-04-28 05:50:45,931 INFO L290 TraceCheckUtils]: 33: Hoare triple {3741#false} ~cond := #in~cond; {3741#false} is VALID [2022-04-28 05:50:45,931 INFO L272 TraceCheckUtils]: 32: Hoare triple {3741#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {3741#false} is VALID [2022-04-28 05:50:45,932 INFO L290 TraceCheckUtils]: 31: Hoare triple {3741#false} assume !(#t~post6 < 100);havoc #t~post6; {3741#false} is VALID [2022-04-28 05:50:45,932 INFO L290 TraceCheckUtils]: 30: Hoare triple {3741#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3741#false} is VALID [2022-04-28 05:50:45,932 INFO L290 TraceCheckUtils]: 29: Hoare triple {3741#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {3741#false} is VALID [2022-04-28 05:50:45,932 INFO L290 TraceCheckUtils]: 28: Hoare triple {3876#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {3741#false} is VALID [2022-04-28 05:50:45,933 INFO L290 TraceCheckUtils]: 27: Hoare triple {3880#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3876#(< |main_#t~post7| 100)} is VALID [2022-04-28 05:50:45,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {3880#(< ~counter~0 100)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3880#(< ~counter~0 100)} is VALID [2022-04-28 05:50:45,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {3880#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {3880#(< ~counter~0 100)} is VALID [2022-04-28 05:50:45,934 INFO L290 TraceCheckUtils]: 24: Hoare triple {3890#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3880#(< ~counter~0 100)} is VALID [2022-04-28 05:50:45,934 INFO L290 TraceCheckUtils]: 23: Hoare triple {3890#(< ~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; {3890#(< ~counter~0 99)} is VALID [2022-04-28 05:50:45,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {3890#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {3890#(< ~counter~0 99)} is VALID [2022-04-28 05:50:45,935 INFO L290 TraceCheckUtils]: 21: Hoare triple {3890#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {3890#(< ~counter~0 99)} is VALID [2022-04-28 05:50:45,935 INFO L290 TraceCheckUtils]: 20: Hoare triple {3903#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {3890#(< ~counter~0 99)} is VALID [2022-04-28 05:50:45,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {3903#(< ~counter~0 98)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {3903#(< ~counter~0 98)} is VALID [2022-04-28 05:50:45,940 INFO L290 TraceCheckUtils]: 18: Hoare triple {3903#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {3903#(< ~counter~0 98)} is VALID [2022-04-28 05:50:45,940 INFO L290 TraceCheckUtils]: 17: Hoare triple {3913#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3903#(< ~counter~0 98)} is VALID [2022-04-28 05:50:45,940 INFO L290 TraceCheckUtils]: 16: Hoare triple {3913#(< ~counter~0 97)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,941 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3740#true} {3913#(< ~counter~0 97)} #96#return; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,941 INFO L290 TraceCheckUtils]: 14: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 05:50:45,941 INFO L290 TraceCheckUtils]: 13: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 05:50:45,941 INFO L290 TraceCheckUtils]: 12: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 05:50:45,941 INFO L272 TraceCheckUtils]: 11: Hoare triple {3913#(< ~counter~0 97)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 05:50:45,942 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3740#true} {3913#(< ~counter~0 97)} #94#return; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {3740#true} assume true; {3740#true} is VALID [2022-04-28 05:50:45,942 INFO L290 TraceCheckUtils]: 8: Hoare triple {3740#true} assume !(0 == ~cond); {3740#true} is VALID [2022-04-28 05:50:45,942 INFO L290 TraceCheckUtils]: 7: Hoare triple {3740#true} ~cond := #in~cond; {3740#true} is VALID [2022-04-28 05:50:45,942 INFO L272 TraceCheckUtils]: 6: Hoare triple {3913#(< ~counter~0 97)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {3740#true} is VALID [2022-04-28 05:50:45,942 INFO L290 TraceCheckUtils]: 5: Hoare triple {3913#(< ~counter~0 97)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,943 INFO L272 TraceCheckUtils]: 4: Hoare triple {3913#(< ~counter~0 97)} call #t~ret9 := main(); {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,943 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3913#(< ~counter~0 97)} {3740#true} #108#return; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,943 INFO L290 TraceCheckUtils]: 2: Hoare triple {3913#(< ~counter~0 97)} assume true; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {3740#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3913#(< ~counter~0 97)} is VALID [2022-04-28 05:50:45,944 INFO L272 TraceCheckUtils]: 0: Hoare triple {3740#true} call ULTIMATE.init(); {3740#true} is VALID [2022-04-28 05:50:45,944 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:45,945 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:45,945 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [219298477] [2022-04-28 05:50:45,945 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:45,945 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [464938077] [2022-04-28 05:50:45,945 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [464938077] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:45,945 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:45,945 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-28 05:50:45,945 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:45,945 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [731777095] [2022-04-28 05:50:45,946 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [731777095] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:45,946 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:45,946 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 05:50:45,946 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1776473698] [2022-04-28 05:50:45,946 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:45,946 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:45,952 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:45,952 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:45,973 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:45,973 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 05:50:45,973 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:45,973 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 05:50:45,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:50:45,973 INFO L87 Difference]: Start difference. First operand 90 states and 124 transitions. Second operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:46,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:46,308 INFO L93 Difference]: Finished difference Result 163 states and 227 transitions. [2022-04-28 05:50:46,308 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:50:46,309 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:46,309 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:46,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:46,311 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 05:50:46,311 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:46,313 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 109 transitions. [2022-04-28 05:50:46,313 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 109 transitions. [2022-04-28 05:50:46,394 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:46,397 INFO L225 Difference]: With dead ends: 163 [2022-04-28 05:50:46,397 INFO L226 Difference]: Without dead ends: 112 [2022-04-28 05:50:46,397 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 61 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=96, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:50:46,398 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 34 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:46,398 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [34 Valid, 180 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:46,399 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-04-28 05:50:46,557 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 109. [2022-04-28 05:50:46,558 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:46,565 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:46,566 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:46,567 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:46,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:46,571 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 05:50:46,571 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 05:50:46,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:46,572 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:46,574 INFO L74 IsIncluded]: Start isIncluded. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 05:50:46,576 INFO L87 Difference]: Start difference. First operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 112 states. [2022-04-28 05:50:46,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:46,579 INFO L93 Difference]: Finished difference Result 112 states and 149 transitions. [2022-04-28 05:50:46,579 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 149 transitions. [2022-04-28 05:50:46,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:46,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:46,580 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:46,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:46,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 109 states, 81 states have (on average 1.3209876543209877) internal successors, (107), 82 states have internal predecessors, (107), 21 states have call successors, (21), 7 states have call predecessors, (21), 6 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-28 05:50:46,584 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 109 states to 109 states and 147 transitions. [2022-04-28 05:50:46,584 INFO L78 Accepts]: Start accepts. Automaton has 109 states and 147 transitions. Word has length 36 [2022-04-28 05:50:46,584 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:46,584 INFO L495 AbstractCegarLoop]: Abstraction has 109 states and 147 transitions. [2022-04-28 05:50:46,584 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.5714285714285716) internal successors, (25), 6 states have internal predecessors, (25), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:46,585 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 109 states and 147 transitions. [2022-04-28 05:50:46,737 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 05:50:46,738 INFO L276 IsEmpty]: Start isEmpty. Operand 109 states and 147 transitions. [2022-04-28 05:50:46,738 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-28 05:50:46,738 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:46,738 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:46,754 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 05:50:46,939 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 05:50:46,939 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:46,940 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:46,940 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 1 times [2022-04-28 05:50:46,940 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:46,940 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [933398219] [2022-04-28 05:50:46,940 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:46,940 INFO L85 PathProgramCache]: Analyzing trace with hash 1581560821, now seen corresponding path program 2 times [2022-04-28 05:50:46,940 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:46,941 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [68021350] [2022-04-28 05:50:46,941 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:46,941 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:46,963 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:46,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1748192297] [2022-04-28 05:50:46,964 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:46,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:46,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:46,965 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 05:50:46,966 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 05:50:47,003 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:47,003 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:47,004 INFO L263 TraceCheckSpWp]: Trace formula consists of 149 conjuncts, 22 conjunts are in the unsatisfiable core [2022-04-28 05:50:47,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:47,012 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:47,339 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 05:50:47,339 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4737#true} is VALID [2022-04-28 05:50:47,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:47,339 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 05:50:47,339 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 05:50:47,339 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-28 05:50:47,340 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:47,340 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:47,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {4763#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:47,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4767#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:47,341 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4767#(not (= |assume_abort_if_not_#in~cond| 0))} {4737#true} #94#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:47,341 INFO L272 TraceCheckUtils]: 11: Hoare triple {4774#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:47,341 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:50:47,341 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:50:47,341 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:47,342 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4774#(<= 1 main_~x~0)} #96#return; {4774#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:47,343 INFO L290 TraceCheckUtils]: 16: Hoare triple {4774#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,343 INFO L290 TraceCheckUtils]: 17: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,344 INFO L290 TraceCheckUtils]: 18: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 100);havoc #t~post6; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,344 INFO L290 TraceCheckUtils]: 19: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,344 INFO L290 TraceCheckUtils]: 20: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,345 INFO L290 TraceCheckUtils]: 21: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,345 INFO L290 TraceCheckUtils]: 22: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:50:47,346 INFO L290 TraceCheckUtils]: 23: Hoare triple {4793#(and (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,346 INFO L290 TraceCheckUtils]: 24: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,346 INFO L290 TraceCheckUtils]: 25: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,347 INFO L290 TraceCheckUtils]: 26: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,347 INFO L290 TraceCheckUtils]: 27: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,348 INFO L290 TraceCheckUtils]: 28: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post7 < 100);havoc #t~post7; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,348 INFO L290 TraceCheckUtils]: 29: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,348 INFO L290 TraceCheckUtils]: 30: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,349 INFO L290 TraceCheckUtils]: 31: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post8 < 100);havoc #t~post8; {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:50:47,350 INFO L272 TraceCheckUtils]: 32: Hoare triple {4815#(and (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:47,350 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:47,351 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 05:50:47,351 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 05:50:47,351 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 05:50:47,351 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:47,557 INFO L290 TraceCheckUtils]: 35: Hoare triple {4738#false} assume !false; {4738#false} is VALID [2022-04-28 05:50:47,558 INFO L290 TraceCheckUtils]: 34: Hoare triple {4847#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4738#false} is VALID [2022-04-28 05:50:47,558 INFO L290 TraceCheckUtils]: 33: Hoare triple {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4847#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:47,559 INFO L272 TraceCheckUtils]: 32: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {4843#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:47,559 INFO L290 TraceCheckUtils]: 31: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,560 INFO L290 TraceCheckUtils]: 29: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,561 INFO L290 TraceCheckUtils]: 28: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,561 INFO L290 TraceCheckUtils]: 27: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,562 INFO L290 TraceCheckUtils]: 26: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,562 INFO L290 TraceCheckUtils]: 25: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,563 INFO L290 TraceCheckUtils]: 24: Hoare triple {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,564 INFO L290 TraceCheckUtils]: 23: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {4863#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:47,564 INFO L290 TraceCheckUtils]: 22: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,565 INFO L290 TraceCheckUtils]: 21: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,565 INFO L290 TraceCheckUtils]: 20: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,566 INFO L290 TraceCheckUtils]: 19: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,566 INFO L290 TraceCheckUtils]: 18: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,566 INFO L290 TraceCheckUtils]: 17: Hoare triple {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,567 INFO L290 TraceCheckUtils]: 16: Hoare triple {4737#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {4891#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:47,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4737#true} {4737#true} #96#return; {4737#true} is VALID [2022-04-28 05:50:47,567 INFO L290 TraceCheckUtils]: 14: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:47,567 INFO L290 TraceCheckUtils]: 13: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:50:47,567 INFO L290 TraceCheckUtils]: 12: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L272 TraceCheckUtils]: 11: Hoare triple {4737#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4737#true} {4737#true} #94#return; {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L290 TraceCheckUtils]: 9: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L290 TraceCheckUtils]: 8: Hoare triple {4737#true} assume !(0 == ~cond); {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L290 TraceCheckUtils]: 7: Hoare triple {4737#true} ~cond := #in~cond; {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L272 TraceCheckUtils]: 6: Hoare triple {4737#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L290 TraceCheckUtils]: 5: Hoare triple {4737#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L272 TraceCheckUtils]: 4: Hoare triple {4737#true} call #t~ret9 := main(); {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4737#true} {4737#true} #108#return; {4737#true} is VALID [2022-04-28 05:50:47,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {4737#true} assume true; {4737#true} is VALID [2022-04-28 05:50:47,569 INFO L290 TraceCheckUtils]: 1: Hoare triple {4737#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {4737#true} is VALID [2022-04-28 05:50:47,569 INFO L272 TraceCheckUtils]: 0: Hoare triple {4737#true} call ULTIMATE.init(); {4737#true} is VALID [2022-04-28 05:50:47,569 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:47,569 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:47,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [68021350] [2022-04-28 05:50:47,569 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:47,569 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1748192297] [2022-04-28 05:50:47,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1748192297] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:47,569 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:47,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 6] total 11 [2022-04-28 05:50:47,570 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:47,570 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [933398219] [2022-04-28 05:50:47,570 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [933398219] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:47,570 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:47,570 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:50:47,570 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1145282761] [2022-04-28 05:50:47,570 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:47,571 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:47,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:47,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:47,597 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:47,597 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:50:47,598 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:47,598 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:50:47,598 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:50:47,598 INFO L87 Difference]: Start difference. First operand 109 states and 147 transitions. Second operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:48,306 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:48,306 INFO L93 Difference]: Finished difference Result 154 states and 208 transitions. [2022-04-28 05:50:48,306 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:50:48,306 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 36 [2022-04-28 05:50:48,306 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:48,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:48,308 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 05:50:48,308 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:48,310 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 99 transitions. [2022-04-28 05:50:48,310 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 99 transitions. [2022-04-28 05:50:48,397 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:48,401 INFO L225 Difference]: With dead ends: 154 [2022-04-28 05:50:48,401 INFO L226 Difference]: Without dead ends: 152 [2022-04-28 05:50:48,402 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=31, Invalid=125, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:50:48,404 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 61 mSDsluCounter, 262 mSDsCounter, 0 mSdLazyCounter, 170 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 326 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 170 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:48,404 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [73 Valid, 326 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 170 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:48,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2022-04-28 05:50:48,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 148. [2022-04-28 05:50:48,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:48,605 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:48,606 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:48,606 INFO L87 Difference]: Start difference. First operand 152 states. Second operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:48,612 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:48,612 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 05:50:48,612 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 05:50:48,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:48,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:48,621 INFO L74 IsIncluded]: Start isIncluded. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 05:50:48,622 INFO L87 Difference]: Start difference. First operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 152 states. [2022-04-28 05:50:48,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:48,625 INFO L93 Difference]: Finished difference Result 152 states and 206 transitions. [2022-04-28 05:50:48,626 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 206 transitions. [2022-04-28 05:50:48,626 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:48,626 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:48,626 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:48,626 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:48,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 148 states, 109 states have (on average 1.3394495412844036) internal successors, (146), 110 states have internal predecessors, (146), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:48,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 148 states to 148 states and 202 transitions. [2022-04-28 05:50:48,630 INFO L78 Accepts]: Start accepts. Automaton has 148 states and 202 transitions. Word has length 36 [2022-04-28 05:50:48,631 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:48,631 INFO L495 AbstractCegarLoop]: Abstraction has 148 states and 202 transitions. [2022-04-28 05:50:48,631 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.111111111111111) internal successors, (28), 7 states have internal predecessors, (28), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:50:48,631 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 148 states and 202 transitions. [2022-04-28 05:50:48,820 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:48,820 INFO L276 IsEmpty]: Start isEmpty. Operand 148 states and 202 transitions. [2022-04-28 05:50:48,820 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 05:50:48,820 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:48,821 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:48,837 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 05:50:49,023 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 05:50:49,023 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:49,024 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:49,024 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 3 times [2022-04-28 05:50:49,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:49,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1296253620] [2022-04-28 05:50:49,024 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:49,024 INFO L85 PathProgramCache]: Analyzing trace with hash -428189223, now seen corresponding path program 4 times [2022-04-28 05:50:49,024 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:49,024 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1699866643] [2022-04-28 05:50:49,024 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:49,025 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:49,038 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:49,039 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [3401056] [2022-04-28 05:50:49,039 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:50:49,039 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:49,039 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:49,040 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 05:50:49,052 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 05:50:49,083 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:50:49,083 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:49,084 INFO L263 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 05:50:49,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:49,094 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:49,194 INFO L272 TraceCheckUtils]: 0: Hoare triple {5875#true} call ULTIMATE.init(); {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L290 TraceCheckUtils]: 1: Hoare triple {5875#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L290 TraceCheckUtils]: 2: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5875#true} {5875#true} #108#return; {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L272 TraceCheckUtils]: 4: Hoare triple {5875#true} call #t~ret9 := main(); {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L290 TraceCheckUtils]: 5: Hoare triple {5875#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L272 TraceCheckUtils]: 6: Hoare triple {5875#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L290 TraceCheckUtils]: 7: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 05:50:49,195 INFO L290 TraceCheckUtils]: 8: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L290 TraceCheckUtils]: 9: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5875#true} {5875#true} #94#return; {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L272 TraceCheckUtils]: 11: Hoare triple {5875#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L290 TraceCheckUtils]: 12: Hoare triple {5875#true} ~cond := #in~cond; {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L290 TraceCheckUtils]: 13: Hoare triple {5875#true} assume !(0 == ~cond); {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L290 TraceCheckUtils]: 14: Hoare triple {5875#true} assume true; {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {5875#true} {5875#true} #96#return; {5875#true} is VALID [2022-04-28 05:50:49,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {5875#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {5875#true} is VALID [2022-04-28 05:50:49,197 INFO L290 TraceCheckUtils]: 17: Hoare triple {5875#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5875#true} is VALID [2022-04-28 05:50:49,197 INFO L290 TraceCheckUtils]: 18: Hoare triple {5875#true} assume !!(#t~post6 < 100);havoc #t~post6; {5875#true} is VALID [2022-04-28 05:50:49,197 INFO L290 TraceCheckUtils]: 19: Hoare triple {5875#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5875#true} is VALID [2022-04-28 05:50:49,197 INFO L290 TraceCheckUtils]: 20: Hoare triple {5875#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5875#true} is VALID [2022-04-28 05:50:49,197 INFO L290 TraceCheckUtils]: 21: Hoare triple {5875#true} assume !!(#t~post7 < 100);havoc #t~post7; {5875#true} is VALID [2022-04-28 05:50:49,211 INFO L290 TraceCheckUtils]: 22: Hoare triple {5875#true} assume !(~c~0 >= ~b~0); {5946#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:50:49,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {5946#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:49,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {5950#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:49,212 INFO L290 TraceCheckUtils]: 25: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {5950#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:50:49,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {5950#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:49,213 INFO L290 TraceCheckUtils]: 27: Hoare triple {5960#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:49,214 INFO L290 TraceCheckUtils]: 28: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {5960#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:50:49,214 INFO L290 TraceCheckUtils]: 29: Hoare triple {5960#(< main_~b~0 main_~c~0)} assume !(~c~0 >= ~b~0); {5876#false} is VALID [2022-04-28 05:50:49,214 INFO L290 TraceCheckUtils]: 30: Hoare triple {5876#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {5876#false} is VALID [2022-04-28 05:50:49,214 INFO L290 TraceCheckUtils]: 31: Hoare triple {5876#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5876#false} is VALID [2022-04-28 05:50:49,215 INFO L290 TraceCheckUtils]: 32: Hoare triple {5876#false} assume !(#t~post6 < 100);havoc #t~post6; {5876#false} is VALID [2022-04-28 05:50:49,215 INFO L272 TraceCheckUtils]: 33: Hoare triple {5876#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {5876#false} is VALID [2022-04-28 05:50:49,215 INFO L290 TraceCheckUtils]: 34: Hoare triple {5876#false} ~cond := #in~cond; {5876#false} is VALID [2022-04-28 05:50:49,215 INFO L290 TraceCheckUtils]: 35: Hoare triple {5876#false} assume 0 == ~cond; {5876#false} is VALID [2022-04-28 05:50:49,215 INFO L290 TraceCheckUtils]: 36: Hoare triple {5876#false} assume !false; {5876#false} is VALID [2022-04-28 05:50:49,215 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 11 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:49,215 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:49,215 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:49,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1699866643] [2022-04-28 05:50:49,216 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:49,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [3401056] [2022-04-28 05:50:49,216 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [3401056] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:49,216 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:49,216 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:49,216 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:49,216 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1296253620] [2022-04-28 05:50:49,217 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1296253620] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:49,217 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:49,217 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:49,217 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [137129885] [2022-04-28 05:50:49,217 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:49,217 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-28 05:50:49,217 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:49,218 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:49,242 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 05:50:49,242 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:50:49,242 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:49,242 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:50:49,242 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:49,243 INFO L87 Difference]: Start difference. First operand 148 states and 202 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:49,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:49,924 INFO L93 Difference]: Finished difference Result 300 states and 442 transitions. [2022-04-28 05:50:49,924 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:50:49,925 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 37 [2022-04-28 05:50:49,925 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:49,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:49,927 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 05:50:49,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:49,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 124 transitions. [2022-04-28 05:50:49,929 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 124 transitions. [2022-04-28 05:50:50,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:50,048 INFO L225 Difference]: With dead ends: 300 [2022-04-28 05:50:50,048 INFO L226 Difference]: Without dead ends: 249 [2022-04-28 05:50:50,048 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 39 GetRequests, 34 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2022-04-28 05:50:50,049 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 29 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 92 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 176 SdHoareTripleChecker+Invalid, 101 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 92 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:50,049 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 176 Invalid, 101 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 92 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:50,050 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-04-28 05:50:50,337 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 175. [2022-04-28 05:50:50,337 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:50,338 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:50,338 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:50,339 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:50,347 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:50,347 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 05:50:50,347 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 05:50:50,348 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:50,348 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:50,349 INFO L74 IsIncluded]: Start isIncluded. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 05:50:50,349 INFO L87 Difference]: Start difference. First operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) Second operand 249 states. [2022-04-28 05:50:50,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:50,357 INFO L93 Difference]: Finished difference Result 249 states and 361 transitions. [2022-04-28 05:50:50,357 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 361 transitions. [2022-04-28 05:50:50,358 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:50,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:50,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:50,359 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:50,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 175 states, 136 states have (on average 1.3455882352941178) internal successors, (183), 137 states have internal predecessors, (183), 29 states have call successors, (29), 10 states have call predecessors, (29), 9 states have return successors, (27), 27 states have call predecessors, (27), 27 states have call successors, (27) [2022-04-28 05:50:50,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 175 states to 175 states and 239 transitions. [2022-04-28 05:50:50,363 INFO L78 Accepts]: Start accepts. Automaton has 175 states and 239 transitions. Word has length 37 [2022-04-28 05:50:50,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:50,364 INFO L495 AbstractCegarLoop]: Abstraction has 175 states and 239 transitions. [2022-04-28 05:50:50,364 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 5 states have internal predecessors, (26), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 05:50:50,364 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 175 states and 239 transitions. [2022-04-28 05:50:50,580 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:50,580 INFO L276 IsEmpty]: Start isEmpty. Operand 175 states and 239 transitions. [2022-04-28 05:50:50,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 05:50:50,581 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:50,581 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:50,597 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 05:50:50,784 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 05:50:50,784 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:50,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:50,784 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 1 times [2022-04-28 05:50:50,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:50,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [589741564] [2022-04-28 05:50:50,785 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:50,785 INFO L85 PathProgramCache]: Analyzing trace with hash -957710478, now seen corresponding path program 2 times [2022-04-28 05:50:50,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:50,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1982342506] [2022-04-28 05:50:50,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:50,786 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:50,798 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:50,798 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [640318319] [2022-04-28 05:50:50,798 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:50,799 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:50,799 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:50,800 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 05:50:50,811 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 05:50:50,861 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:50,861 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:50,862 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:50:50,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:50,871 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:51,100 INFO L272 TraceCheckUtils]: 0: Hoare triple {7443#true} call ULTIMATE.init(); {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L290 TraceCheckUtils]: 1: Hoare triple {7443#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L290 TraceCheckUtils]: 2: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7443#true} {7443#true} #108#return; {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L272 TraceCheckUtils]: 4: Hoare triple {7443#true} call #t~ret9 := main(); {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L290 TraceCheckUtils]: 5: Hoare triple {7443#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L272 TraceCheckUtils]: 6: Hoare triple {7443#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:51,100 INFO L290 TraceCheckUtils]: 7: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:50:51,101 INFO L290 TraceCheckUtils]: 8: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:50:51,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:51,101 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7443#true} {7443#true} #94#return; {7443#true} is VALID [2022-04-28 05:50:51,101 INFO L272 TraceCheckUtils]: 11: Hoare triple {7443#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:51,101 INFO L290 TraceCheckUtils]: 12: Hoare triple {7443#true} ~cond := #in~cond; {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:51,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {7484#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:51,102 INFO L290 TraceCheckUtils]: 14: Hoare triple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {7488#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:51,102 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {7488#(not (= |assume_abort_if_not_#in~cond| 0))} {7443#true} #96#return; {7495#(<= 1 main_~y~0)} is VALID [2022-04-28 05:50:51,103 INFO L290 TraceCheckUtils]: 16: Hoare triple {7495#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:51,103 INFO L290 TraceCheckUtils]: 17: Hoare triple {7499#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:51,103 INFO L290 TraceCheckUtils]: 18: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {7499#(<= 1 main_~b~0)} is VALID [2022-04-28 05:50:51,103 INFO L290 TraceCheckUtils]: 19: Hoare triple {7499#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,105 INFO L290 TraceCheckUtils]: 21: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post7 < 100);havoc #t~post7; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,106 INFO L290 TraceCheckUtils]: 22: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,106 INFO L290 TraceCheckUtils]: 23: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,107 INFO L290 TraceCheckUtils]: 24: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,107 INFO L272 TraceCheckUtils]: 25: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:51,107 INFO L290 TraceCheckUtils]: 26: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:50:51,107 INFO L290 TraceCheckUtils]: 27: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:50:51,107 INFO L290 TraceCheckUtils]: 28: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:51,108 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #98#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,108 INFO L272 TraceCheckUtils]: 30: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {7443#true} is VALID [2022-04-28 05:50:51,108 INFO L290 TraceCheckUtils]: 31: Hoare triple {7443#true} ~cond := #in~cond; {7443#true} is VALID [2022-04-28 05:50:51,108 INFO L290 TraceCheckUtils]: 32: Hoare triple {7443#true} assume !(0 == ~cond); {7443#true} is VALID [2022-04-28 05:50:51,108 INFO L290 TraceCheckUtils]: 33: Hoare triple {7443#true} assume true; {7443#true} is VALID [2022-04-28 05:50:51,109 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {7443#true} {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} #100#return; {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} is VALID [2022-04-28 05:50:51,109 INFO L272 TraceCheckUtils]: 35: Hoare triple {7509#(and (= main_~c~0 main_~a~0) (= main_~k~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:51,109 INFO L290 TraceCheckUtils]: 36: Hoare triple {7558#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7562#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:51,110 INFO L290 TraceCheckUtils]: 37: Hoare triple {7562#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7444#false} is VALID [2022-04-28 05:50:51,110 INFO L290 TraceCheckUtils]: 38: Hoare triple {7444#false} assume !false; {7444#false} is VALID [2022-04-28 05:50:51,110 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-04-28 05:50:51,110 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:51,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:51,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1982342506] [2022-04-28 05:50:51,110 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:51,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [640318319] [2022-04-28 05:50:51,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [640318319] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:51,111 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:51,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:50:51,111 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:51,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [589741564] [2022-04-28 05:50:51,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [589741564] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:51,111 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:51,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:50:51,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1620112415] [2022-04-28 05:50:51,111 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:51,112 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:50:51,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:51,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:51,136 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:51,136 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:50:51,136 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:51,137 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:50:51,137 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:50:51,137 INFO L87 Difference]: Start difference. First operand 175 states and 239 transitions. Second operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:51,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:51,931 INFO L93 Difference]: Finished difference Result 193 states and 262 transitions. [2022-04-28 05:50:51,932 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 05:50:51,932 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 39 [2022-04-28 05:50:51,932 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:51,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:51,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 05:50:51,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:51,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 92 transitions. [2022-04-28 05:50:51,935 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 92 transitions. [2022-04-28 05:50:52,020 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:52,023 INFO L225 Difference]: With dead ends: 193 [2022-04-28 05:50:52,024 INFO L226 Difference]: Without dead ends: 191 [2022-04-28 05:50:52,024 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-28 05:50:52,024 INFO L413 NwaCegarLoop]: 45 mSDtfsCounter, 57 mSDsluCounter, 225 mSDsCounter, 0 mSdLazyCounter, 150 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 270 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 150 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:52,025 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [61 Valid, 270 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 150 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:50:52,025 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 191 states. [2022-04-28 05:50:52,394 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 191 to 190. [2022-04-28 05:50:52,395 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:52,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:52,395 INFO L74 IsIncluded]: Start isIncluded. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:52,396 INFO L87 Difference]: Start difference. First operand 191 states. Second operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:52,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,400 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 05:50:52,400 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 05:50:52,401 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,401 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,401 INFO L74 IsIncluded]: Start isIncluded. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 05:50:52,402 INFO L87 Difference]: Start difference. First operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 191 states. [2022-04-28 05:50:52,406 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:52,406 INFO L93 Difference]: Finished difference Result 191 states and 259 transitions. [2022-04-28 05:50:52,406 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 259 transitions. [2022-04-28 05:50:52,407 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:52,407 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:52,407 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:52,407 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:52,407 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 190 states, 145 states have (on average 1.3379310344827586) internal successors, (194), 146 states have internal predecessors, (194), 33 states have call successors, (33), 12 states have call predecessors, (33), 11 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:52,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 190 states to 190 states and 258 transitions. [2022-04-28 05:50:52,412 INFO L78 Accepts]: Start accepts. Automaton has 190 states and 258 transitions. Word has length 39 [2022-04-28 05:50:52,412 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:52,412 INFO L495 AbstractCegarLoop]: Abstraction has 190 states and 258 transitions. [2022-04-28 05:50:52,412 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:50:52,413 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 190 states and 258 transitions. [2022-04-28 05:50:52,717 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 258 edges. 258 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:52,717 INFO L276 IsEmpty]: Start isEmpty. Operand 190 states and 258 transitions. [2022-04-28 05:50:52,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 05:50:52,717 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:52,717 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:52,740 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 05:50:52,918 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 05:50:52,918 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:52,918 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:52,918 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 1 times [2022-04-28 05:50:52,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:52,919 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [696186650] [2022-04-28 05:50:52,919 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:52,919 INFO L85 PathProgramCache]: Analyzing trace with hash 409018142, now seen corresponding path program 2 times [2022-04-28 05:50:52,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:52,919 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [786781937] [2022-04-28 05:50:52,919 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:52,919 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:52,936 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:52,936 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1070330079] [2022-04-28 05:50:52,936 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:52,937 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:52,937 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:52,940 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 05:50:52,953 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 05:50:52,992 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:52,992 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:52,994 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-28 05:50:53,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:53,006 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:53,530 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 05:50:53,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8724#true} is VALID [2022-04-28 05:50:53,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:50:53,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 05:50:53,530 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 05:50:53,530 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-28 05:50:53,530 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:50:53,531 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:53,531 INFO L290 TraceCheckUtils]: 8: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:53,531 INFO L290 TraceCheckUtils]: 9: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:53,532 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8724#true} #94#return; {8761#(<= 1 main_~x~0)} is VALID [2022-04-28 05:50:53,532 INFO L272 TraceCheckUtils]: 11: Hoare triple {8761#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:50:53,532 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:50:53,533 INFO L290 TraceCheckUtils]: 13: Hoare triple {8750#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:53,533 INFO L290 TraceCheckUtils]: 14: Hoare triple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {8754#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:50:53,534 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8754#(not (= |assume_abort_if_not_#in~cond| 0))} {8761#(<= 1 main_~x~0)} #96#return; {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,534 INFO L290 TraceCheckUtils]: 16: Hoare triple {8777#(and (<= 1 main_~x~0) (<= 1 main_~y~0))} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,535 INFO L290 TraceCheckUtils]: 17: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {8781#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,548 INFO L290 TraceCheckUtils]: 22: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:50:53,548 INFO L290 TraceCheckUtils]: 23: Hoare triple {8791#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,549 INFO L290 TraceCheckUtils]: 24: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,549 INFO L290 TraceCheckUtils]: 25: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,550 INFO L290 TraceCheckUtils]: 26: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,550 INFO L290 TraceCheckUtils]: 27: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,550 INFO L290 TraceCheckUtils]: 28: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post7 < 100);havoc #t~post7; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,551 INFO L290 TraceCheckUtils]: 29: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,551 INFO L290 TraceCheckUtils]: 30: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,551 INFO L290 TraceCheckUtils]: 31: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} assume !!(#t~post8 < 100);havoc #t~post8; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,552 INFO L272 TraceCheckUtils]: 32: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:50:53,552 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:50:53,552 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:50:53,552 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:50:53,552 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} #98#return; {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} is VALID [2022-04-28 05:50:53,553 INFO L272 TraceCheckUtils]: 37: Hoare triple {8804#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~b~0 main_~x~0) (= main_~q~0 1) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:53,553 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:53,554 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 05:50:53,554 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 05:50:53,554 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:53,554 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:50:53,966 INFO L290 TraceCheckUtils]: 40: Hoare triple {8725#false} assume !false; {8725#false} is VALID [2022-04-28 05:50:53,966 INFO L290 TraceCheckUtils]: 39: Hoare triple {8851#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8725#false} is VALID [2022-04-28 05:50:53,966 INFO L290 TraceCheckUtils]: 38: Hoare triple {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {8851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:53,967 INFO L272 TraceCheckUtils]: 37: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {8847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:53,968 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8724#true} {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,968 INFO L290 TraceCheckUtils]: 35: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:50:53,968 INFO L290 TraceCheckUtils]: 34: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:50:53,968 INFO L290 TraceCheckUtils]: 33: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:50:53,968 INFO L272 TraceCheckUtils]: 32: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:50:53,968 INFO L290 TraceCheckUtils]: 31: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,969 INFO L290 TraceCheckUtils]: 30: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,969 INFO L290 TraceCheckUtils]: 29: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,969 INFO L290 TraceCheckUtils]: 28: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,970 INFO L290 TraceCheckUtils]: 27: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,970 INFO L290 TraceCheckUtils]: 26: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,970 INFO L290 TraceCheckUtils]: 25: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:53,971 INFO L290 TraceCheckUtils]: 24: Hoare triple {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:50:55,972 WARN L290 TraceCheckUtils]: 23: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {8867#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is UNKNOWN [2022-04-28 05:50:55,973 INFO L290 TraceCheckUtils]: 22: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} assume !(~c~0 >= ~b~0); {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:50:55,973 INFO L290 TraceCheckUtils]: 21: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:50:55,974 INFO L290 TraceCheckUtils]: 20: Hoare triple {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:50:55,975 INFO L290 TraceCheckUtils]: 19: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {8910#(= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) main_~c~0)} is VALID [2022-04-28 05:50:55,976 INFO L290 TraceCheckUtils]: 18: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,976 INFO L290 TraceCheckUtils]: 17: Hoare triple {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {8724#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {8923#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:50:55,983 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {8724#true} {8724#true} #96#return; {8724#true} is VALID [2022-04-28 05:50:55,983 INFO L290 TraceCheckUtils]: 14: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:50:55,983 INFO L290 TraceCheckUtils]: 13: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:50:55,983 INFO L290 TraceCheckUtils]: 12: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L272 TraceCheckUtils]: 11: Hoare triple {8724#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8724#true} {8724#true} #94#return; {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L290 TraceCheckUtils]: 9: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L290 TraceCheckUtils]: 8: Hoare triple {8724#true} assume !(0 == ~cond); {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L290 TraceCheckUtils]: 7: Hoare triple {8724#true} ~cond := #in~cond; {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L272 TraceCheckUtils]: 6: Hoare triple {8724#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L290 TraceCheckUtils]: 5: Hoare triple {8724#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L272 TraceCheckUtils]: 4: Hoare triple {8724#true} call #t~ret9 := main(); {8724#true} is VALID [2022-04-28 05:50:55,984 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8724#true} {8724#true} #108#return; {8724#true} is VALID [2022-04-28 05:50:55,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {8724#true} assume true; {8724#true} is VALID [2022-04-28 05:50:55,985 INFO L290 TraceCheckUtils]: 1: Hoare triple {8724#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {8724#true} is VALID [2022-04-28 05:50:55,985 INFO L272 TraceCheckUtils]: 0: Hoare triple {8724#true} call ULTIMATE.init(); {8724#true} is VALID [2022-04-28 05:50:55,985 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 2 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:50:55,985 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:55,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [786781937] [2022-04-28 05:50:55,985 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:55,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1070330079] [2022-04-28 05:50:55,986 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1070330079] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:50:55,986 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:50:55,986 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 7] total 14 [2022-04-28 05:50:55,986 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:55,986 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [696186650] [2022-04-28 05:50:55,986 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [696186650] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:55,986 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:55,986 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:50:55,986 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [814069489] [2022-04-28 05:50:55,986 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:55,987 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 05:50:55,987 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:55,987 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:50:56,023 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:56,023 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:50:56,024 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:56,024 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:50:56,024 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:50:56,024 INFO L87 Difference]: Start difference. First operand 190 states and 258 transitions. Second operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:50:57,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:57,251 INFO L93 Difference]: Finished difference Result 199 states and 266 transitions. [2022-04-28 05:50:57,251 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 05:50:57,251 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 41 [2022-04-28 05:50:57,251 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:57,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:50:57,253 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:50:57,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:50:57,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 115 transitions. [2022-04-28 05:50:57,255 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 115 transitions. [2022-04-28 05:50:57,358 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:57,362 INFO L225 Difference]: With dead ends: 199 [2022-04-28 05:50:57,362 INFO L226 Difference]: Without dead ends: 197 [2022-04-28 05:50:57,363 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 38 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=51, Invalid=221, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:50:57,363 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 104 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 248 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 116 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 278 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 248 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:57,363 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [116 Valid, 310 Invalid, 278 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 248 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:50:57,364 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 197 states. [2022-04-28 05:50:57,734 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 197 to 194. [2022-04-28 05:50:57,734 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:57,735 INFO L82 GeneralOperation]: Start isEquivalent. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:57,735 INFO L74 IsIncluded]: Start isIncluded. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:57,736 INFO L87 Difference]: Start difference. First operand 197 states. Second operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:57,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:57,741 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 05:50:57,741 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 05:50:57,742 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:57,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:57,742 INFO L74 IsIncluded]: Start isIncluded. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-28 05:50:57,743 INFO L87 Difference]: Start difference. First operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) Second operand 197 states. [2022-04-28 05:50:57,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:57,748 INFO L93 Difference]: Finished difference Result 197 states and 264 transitions. [2022-04-28 05:50:57,748 INFO L276 IsEmpty]: Start isEmpty. Operand 197 states and 264 transitions. [2022-04-28 05:50:57,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:57,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:57,749 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:57,749 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:57,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 194 states, 148 states have (on average 1.3310810810810811) internal successors, (197), 149 states have internal predecessors, (197), 33 states have call successors, (33), 13 states have call predecessors, (33), 12 states have return successors, (31), 31 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-28 05:50:57,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 194 states to 194 states and 261 transitions. [2022-04-28 05:50:57,755 INFO L78 Accepts]: Start accepts. Automaton has 194 states and 261 transitions. Word has length 41 [2022-04-28 05:50:57,755 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:57,755 INFO L495 AbstractCegarLoop]: Abstraction has 194 states and 261 transitions. [2022-04-28 05:50:57,756 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.8) internal successors, (28), 8 states have internal predecessors, (28), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 05:50:57,756 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 194 states and 261 transitions. [2022-04-28 05:50:58,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:58,039 INFO L276 IsEmpty]: Start isEmpty. Operand 194 states and 261 transitions. [2022-04-28 05:50:58,040 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-28 05:50:58,040 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:50:58,040 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:50:58,056 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-28 05:50:58,240 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 05:50:58,240 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:50:58,241 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:50:58,241 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 1 times [2022-04-28 05:50:58,241 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:58,241 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [47217383] [2022-04-28 05:50:58,241 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:50:58,241 INFO L85 PathProgramCache]: Analyzing trace with hash -1943393983, now seen corresponding path program 2 times [2022-04-28 05:50:58,241 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:50:58,241 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [788200052] [2022-04-28 05:50:58,242 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:50:58,242 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:50:58,253 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:50:58,254 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1918281473] [2022-04-28 05:50:58,254 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:50:58,254 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:50:58,254 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:50:58,255 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 05:50:58,261 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 05:50:58,300 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:50:58,301 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:50:58,301 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:50:58,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:50:58,310 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:50:58,432 INFO L272 TraceCheckUtils]: 0: Hoare triple {10169#true} call ULTIMATE.init(); {10169#true} is VALID [2022-04-28 05:50:58,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {10169#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {10169#true} is VALID [2022-04-28 05:50:58,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:50:58,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10169#true} {10169#true} #108#return; {10169#true} is VALID [2022-04-28 05:50:58,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {10169#true} call #t~ret9 := main(); {10169#true} is VALID [2022-04-28 05:50:58,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {10169#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {10169#true} is VALID [2022-04-28 05:50:58,432 INFO L272 TraceCheckUtils]: 6: Hoare triple {10169#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 8: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10169#true} {10169#true} #94#return; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L272 TraceCheckUtils]: 11: Hoare triple {10169#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 12: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 13: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 14: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {10169#true} {10169#true} #96#return; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 16: Hoare triple {10169#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 17: Hoare triple {10169#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 18: Hoare triple {10169#true} assume !!(#t~post6 < 100);havoc #t~post6; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 19: Hoare triple {10169#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {10169#true} is VALID [2022-04-28 05:50:58,433 INFO L290 TraceCheckUtils]: 20: Hoare triple {10169#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10169#true} is VALID [2022-04-28 05:50:58,434 INFO L290 TraceCheckUtils]: 21: Hoare triple {10169#true} assume !!(#t~post7 < 100);havoc #t~post7; {10169#true} is VALID [2022-04-28 05:50:58,434 INFO L290 TraceCheckUtils]: 22: Hoare triple {10169#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:50:58,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:50:58,435 INFO L290 TraceCheckUtils]: 24: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:50:58,435 INFO L272 TraceCheckUtils]: 25: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:50:58,435 INFO L290 TraceCheckUtils]: 26: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:50:58,435 INFO L290 TraceCheckUtils]: 27: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:50:58,435 INFO L290 TraceCheckUtils]: 28: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:50:58,436 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #98#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:50:58,436 INFO L272 TraceCheckUtils]: 30: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:50:58,436 INFO L290 TraceCheckUtils]: 31: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:50:58,436 INFO L290 TraceCheckUtils]: 32: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:50:58,436 INFO L290 TraceCheckUtils]: 33: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:50:58,436 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #100#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:50:58,437 INFO L272 TraceCheckUtils]: 35: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {10169#true} is VALID [2022-04-28 05:50:58,437 INFO L290 TraceCheckUtils]: 36: Hoare triple {10169#true} ~cond := #in~cond; {10169#true} is VALID [2022-04-28 05:50:58,437 INFO L290 TraceCheckUtils]: 37: Hoare triple {10169#true} assume !(0 == ~cond); {10169#true} is VALID [2022-04-28 05:50:58,437 INFO L290 TraceCheckUtils]: 38: Hoare triple {10169#true} assume true; {10169#true} is VALID [2022-04-28 05:50:58,437 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {10169#true} {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} #102#return; {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} is VALID [2022-04-28 05:50:58,438 INFO L272 TraceCheckUtils]: 40: Hoare triple {10240#(and (= main_~b~0 main_~v~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:50:58,438 INFO L290 TraceCheckUtils]: 41: Hoare triple {10295#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10299#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:50:58,439 INFO L290 TraceCheckUtils]: 42: Hoare triple {10299#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10170#false} is VALID [2022-04-28 05:50:58,439 INFO L290 TraceCheckUtils]: 43: Hoare triple {10170#false} assume !false; {10170#false} is VALID [2022-04-28 05:50:58,439 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 05:50:58,439 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:50:58,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:50:58,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [788200052] [2022-04-28 05:50:58,439 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:50:58,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1918281473] [2022-04-28 05:50:58,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1918281473] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:58,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:58,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:58,440 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:50:58,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [47217383] [2022-04-28 05:50:58,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [47217383] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:50:58,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:50:58,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:50:58,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [655223832] [2022-04-28 05:50:58,440 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:50:58,441 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-28 05:50:58,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:50:58,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:50:58,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:50:58,472 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:50:58,473 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:50:58,473 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:50:58,473 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:50:58,473 INFO L87 Difference]: Start difference. First operand 194 states and 261 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:50:59,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:59,138 INFO L93 Difference]: Finished difference Result 261 states and 367 transitions. [2022-04-28 05:50:59,138 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:50:59,139 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 44 [2022-04-28 05:50:59,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:50:59,139 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:50:59,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:50:59,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:50:59,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:50:59,141 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 05:50:59,217 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 05:50:59,222 INFO L225 Difference]: With dead ends: 261 [2022-04-28 05:50:59,223 INFO L226 Difference]: Without dead ends: 259 [2022-04-28 05:50:59,223 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:50:59,223 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 12 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 163 SdHoareTripleChecker+Invalid, 50 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:50:59,224 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [13 Valid, 163 Invalid, 50 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:50:59,224 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2022-04-28 05:50:59,738 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 228. [2022-04-28 05:50:59,738 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:50:59,739 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:50:59,739 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:50:59,739 INFO L87 Difference]: Start difference. First operand 259 states. Second operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:50:59,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:59,746 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 05:50:59,746 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 05:50:59,747 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:59,747 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:59,748 INFO L74 IsIncluded]: Start isIncluded. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 05:50:59,748 INFO L87 Difference]: Start difference. First operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) Second operand 259 states. [2022-04-28 05:50:59,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:50:59,755 INFO L93 Difference]: Finished difference Result 259 states and 364 transitions. [2022-04-28 05:50:59,755 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 364 transitions. [2022-04-28 05:50:59,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:50:59,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:50:59,756 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:50:59,756 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:50:59,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 228 states, 161 states have (on average 1.329192546583851) internal successors, (214), 167 states have internal predecessors, (214), 53 states have call successors, (53), 14 states have call predecessors, (53), 13 states have return successors, (51), 46 states have call predecessors, (51), 51 states have call successors, (51) [2022-04-28 05:50:59,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 228 states to 228 states and 318 transitions. [2022-04-28 05:50:59,763 INFO L78 Accepts]: Start accepts. Automaton has 228 states and 318 transitions. Word has length 44 [2022-04-28 05:50:59,763 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:50:59,764 INFO L495 AbstractCegarLoop]: Abstraction has 228 states and 318 transitions. [2022-04-28 05:50:59,764 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 05:50:59,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 228 states and 318 transitions. [2022-04-28 05:51:00,107 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 318 edges. 318 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:00,108 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 318 transitions. [2022-04-28 05:51:00,108 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-04-28 05:51:00,108 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:00,108 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:00,133 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 05:51:00,309 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 05:51:00,309 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:00,309 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:00,309 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 1 times [2022-04-28 05:51:00,309 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:00,309 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1559194683] [2022-04-28 05:51:00,310 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:00,310 INFO L85 PathProgramCache]: Analyzing trace with hash -772903697, now seen corresponding path program 2 times [2022-04-28 05:51:00,310 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:00,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1335756706] [2022-04-28 05:51:00,310 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:00,310 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:00,323 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:00,323 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [362099340] [2022-04-28 05:51:00,323 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:00,323 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:00,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:00,324 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 05:51:00,327 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 05:51:00,372 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:00,372 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:00,373 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:00,383 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:00,384 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:00,585 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 05:51:00,586 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,586 INFO L290 TraceCheckUtils]: 2: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,586 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11811#(<= ~counter~0 0)} {11803#true} #108#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,587 INFO L272 TraceCheckUtils]: 4: Hoare triple {11811#(<= ~counter~0 0)} call #t~ret9 := main(); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,587 INFO L290 TraceCheckUtils]: 5: Hoare triple {11811#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,587 INFO L272 TraceCheckUtils]: 6: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,588 INFO L290 TraceCheckUtils]: 7: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,588 INFO L290 TraceCheckUtils]: 8: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,588 INFO L290 TraceCheckUtils]: 9: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,589 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #94#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,589 INFO L272 TraceCheckUtils]: 11: Hoare triple {11811#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,589 INFO L290 TraceCheckUtils]: 12: Hoare triple {11811#(<= ~counter~0 0)} ~cond := #in~cond; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,590 INFO L290 TraceCheckUtils]: 13: Hoare triple {11811#(<= ~counter~0 0)} assume !(0 == ~cond); {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {11811#(<= ~counter~0 0)} assume true; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,590 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11811#(<= ~counter~0 0)} {11811#(<= ~counter~0 0)} #96#return; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,591 INFO L290 TraceCheckUtils]: 16: Hoare triple {11811#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {11811#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:00,591 INFO L290 TraceCheckUtils]: 17: Hoare triple {11811#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:00,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {11860#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:00,592 INFO L290 TraceCheckUtils]: 19: Hoare triple {11860#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11860#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:00,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {11860#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:00,593 INFO L290 TraceCheckUtils]: 21: Hoare triple {11870#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:00,593 INFO L290 TraceCheckUtils]: 22: Hoare triple {11870#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:00,593 INFO L290 TraceCheckUtils]: 23: Hoare triple {11870#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11870#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:00,594 INFO L290 TraceCheckUtils]: 24: Hoare triple {11870#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:00,594 INFO L290 TraceCheckUtils]: 25: Hoare triple {11883#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:00,594 INFO L290 TraceCheckUtils]: 26: Hoare triple {11883#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11883#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:00,595 INFO L290 TraceCheckUtils]: 27: Hoare triple {11883#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:00,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {11893#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:00,595 INFO L290 TraceCheckUtils]: 29: Hoare triple {11893#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11893#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 30: Hoare triple {11893#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11903#(<= |main_#t~post8| 4)} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 31: Hoare triple {11903#(<= |main_#t~post8| 4)} assume !(#t~post8 < 100);havoc #t~post8; {11804#false} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 100);havoc #t~post7; {11804#false} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11804#false} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 05:51:00,596 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 100);havoc #t~post6; {11804#false} is VALID [2022-04-28 05:51:00,597 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {11804#false} is VALID [2022-04-28 05:51:00,597 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 05:51:00,597 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 05:51:00,597 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 05:51:00,597 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:00,597 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:00,858 INFO L290 TraceCheckUtils]: 41: Hoare triple {11804#false} assume !false; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 40: Hoare triple {11804#false} assume 0 == ~cond; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 39: Hoare triple {11804#false} ~cond := #in~cond; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L272 TraceCheckUtils]: 38: Hoare triple {11804#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 37: Hoare triple {11804#false} assume !(#t~post6 < 100);havoc #t~post6; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 36: Hoare triple {11804#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 35: Hoare triple {11804#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 34: Hoare triple {11804#false} assume !(#t~post7 < 100);havoc #t~post7; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 33: Hoare triple {11804#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11804#false} is VALID [2022-04-28 05:51:00,859 INFO L290 TraceCheckUtils]: 32: Hoare triple {11804#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {11804#false} is VALID [2022-04-28 05:51:00,860 INFO L290 TraceCheckUtils]: 31: Hoare triple {11967#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {11804#false} is VALID [2022-04-28 05:51:00,860 INFO L290 TraceCheckUtils]: 30: Hoare triple {11971#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {11967#(< |main_#t~post8| 100)} is VALID [2022-04-28 05:51:00,860 INFO L290 TraceCheckUtils]: 29: Hoare triple {11971#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {11971#(< ~counter~0 100)} is VALID [2022-04-28 05:51:00,860 INFO L290 TraceCheckUtils]: 28: Hoare triple {11971#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {11971#(< ~counter~0 100)} is VALID [2022-04-28 05:51:00,861 INFO L290 TraceCheckUtils]: 27: Hoare triple {11981#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11971#(< ~counter~0 100)} is VALID [2022-04-28 05:51:00,861 INFO L290 TraceCheckUtils]: 26: Hoare triple {11981#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {11981#(< ~counter~0 99)} is VALID [2022-04-28 05:51:00,864 INFO L290 TraceCheckUtils]: 25: Hoare triple {11981#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {11981#(< ~counter~0 99)} is VALID [2022-04-28 05:51:00,864 INFO L290 TraceCheckUtils]: 24: Hoare triple {11991#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11981#(< ~counter~0 99)} is VALID [2022-04-28 05:51:00,865 INFO L290 TraceCheckUtils]: 23: Hoare triple {11991#(< ~counter~0 98)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {11991#(< ~counter~0 98)} is VALID [2022-04-28 05:51:00,865 INFO L290 TraceCheckUtils]: 22: Hoare triple {11991#(< ~counter~0 98)} assume !(~c~0 >= ~b~0); {11991#(< ~counter~0 98)} is VALID [2022-04-28 05:51:00,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {11991#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {11991#(< ~counter~0 98)} is VALID [2022-04-28 05:51:00,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {12004#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11991#(< ~counter~0 98)} is VALID [2022-04-28 05:51:00,866 INFO L290 TraceCheckUtils]: 19: Hoare triple {12004#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {12004#(< ~counter~0 97)} is VALID [2022-04-28 05:51:00,866 INFO L290 TraceCheckUtils]: 18: Hoare triple {12004#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {12004#(< ~counter~0 97)} is VALID [2022-04-28 05:51:00,867 INFO L290 TraceCheckUtils]: 17: Hoare triple {12014#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12004#(< ~counter~0 97)} is VALID [2022-04-28 05:51:00,867 INFO L290 TraceCheckUtils]: 16: Hoare triple {12014#(< ~counter~0 96)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,867 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {11803#true} {12014#(< ~counter~0 96)} #96#return; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L290 TraceCheckUtils]: 13: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L290 TraceCheckUtils]: 12: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L272 TraceCheckUtils]: 11: Hoare triple {12014#(< ~counter~0 96)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11803#true} {12014#(< ~counter~0 96)} #94#return; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {11803#true} assume true; {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L290 TraceCheckUtils]: 8: Hoare triple {11803#true} assume !(0 == ~cond); {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L290 TraceCheckUtils]: 7: Hoare triple {11803#true} ~cond := #in~cond; {11803#true} is VALID [2022-04-28 05:51:00,868 INFO L272 TraceCheckUtils]: 6: Hoare triple {12014#(< ~counter~0 96)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {11803#true} is VALID [2022-04-28 05:51:00,869 INFO L290 TraceCheckUtils]: 5: Hoare triple {12014#(< ~counter~0 96)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,869 INFO L272 TraceCheckUtils]: 4: Hoare triple {12014#(< ~counter~0 96)} call #t~ret9 := main(); {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,869 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12014#(< ~counter~0 96)} {11803#true} #108#return; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,870 INFO L290 TraceCheckUtils]: 2: Hoare triple {12014#(< ~counter~0 96)} assume true; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {11803#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {12014#(< ~counter~0 96)} is VALID [2022-04-28 05:51:00,870 INFO L272 TraceCheckUtils]: 0: Hoare triple {11803#true} call ULTIMATE.init(); {11803#true} is VALID [2022-04-28 05:51:00,870 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 9 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 05:51:00,870 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:00,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1335756706] [2022-04-28 05:51:00,871 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:00,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [362099340] [2022-04-28 05:51:00,871 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [362099340] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:00,871 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:00,871 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:51:00,871 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:00,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1559194683] [2022-04-28 05:51:00,871 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1559194683] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:00,871 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:00,871 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:00,871 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1957359039] [2022-04-28 05:51:00,871 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:00,872 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-28 05:51:00,872 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:00,872 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:00,896 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 05:51:00,896 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:00,896 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:00,897 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:00,897 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:00,897 INFO L87 Difference]: Start difference. First operand 228 states and 318 transitions. Second operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:01,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:01,691 INFO L93 Difference]: Finished difference Result 429 states and 607 transitions. [2022-04-28 05:51:01,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:51:01,692 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 42 [2022-04-28 05:51:01,692 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:01,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:01,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 05:51:01,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:01,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 132 transitions. [2022-04-28 05:51:01,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 132 transitions. [2022-04-28 05:51:01,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:01,809 INFO L225 Difference]: With dead ends: 429 [2022-04-28 05:51:01,809 INFO L226 Difference]: Without dead ends: 264 [2022-04-28 05:51:01,810 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 71 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=93, Invalid=147, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:01,811 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 52 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 201 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:01,811 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 201 Invalid, 68 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:01,812 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 264 states. [2022-04-28 05:51:02,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 264 to 258. [2022-04-28 05:51:02,431 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:02,432 INFO L82 GeneralOperation]: Start isEquivalent. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:02,432 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:02,433 INFO L87 Difference]: Start difference. First operand 264 states. Second operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:02,440 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:02,440 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 05:51:02,440 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 05:51:02,441 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:02,441 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:02,441 INFO L74 IsIncluded]: Start isIncluded. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 05:51:02,442 INFO L87 Difference]: Start difference. First operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) Second operand 264 states. [2022-04-28 05:51:02,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:02,450 INFO L93 Difference]: Finished difference Result 264 states and 356 transitions. [2022-04-28 05:51:02,450 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 356 transitions. [2022-04-28 05:51:02,451 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:02,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:02,451 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:02,451 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:02,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 258 states, 183 states have (on average 1.3060109289617485) internal successors, (239), 189 states have internal predecessors, (239), 57 states have call successors, (57), 18 states have call predecessors, (57), 17 states have return successors, (55), 50 states have call predecessors, (55), 55 states have call successors, (55) [2022-04-28 05:51:02,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 351 transitions. [2022-04-28 05:51:02,459 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 351 transitions. Word has length 42 [2022-04-28 05:51:02,459 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:02,459 INFO L495 AbstractCegarLoop]: Abstraction has 258 states and 351 transitions. [2022-04-28 05:51:02,459 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.875) internal successors, (31), 7 states have internal predecessors, (31), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 05:51:02,459 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 258 states and 351 transitions. [2022-04-28 05:51:02,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 351 edges. 351 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:02,891 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 351 transitions. [2022-04-28 05:51:02,891 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 05:51:02,891 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:02,891 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:02,907 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:03,091 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 05:51:03,092 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:03,092 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:03,092 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 1 times [2022-04-28 05:51:03,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:03,092 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2031670383] [2022-04-28 05:51:03,092 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:03,093 INFO L85 PathProgramCache]: Analyzing trace with hash 744709461, now seen corresponding path program 2 times [2022-04-28 05:51:03,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:03,093 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1652668933] [2022-04-28 05:51:03,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:03,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:03,104 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:03,104 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1617832209] [2022-04-28 05:51:03,104 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:03,104 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:03,104 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:03,105 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 05:51:03,123 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 05:51:03,164 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:03,164 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:03,164 INFO L263 TraceCheckSpWp]: Trace formula consists of 167 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 05:51:03,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:03,173 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:05,654 INFO L272 TraceCheckUtils]: 0: Hoare triple {13974#true} call ULTIMATE.init(); {13974#true} is VALID [2022-04-28 05:51:05,654 INFO L290 TraceCheckUtils]: 1: Hoare triple {13974#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {13974#true} is VALID [2022-04-28 05:51:05,654 INFO L290 TraceCheckUtils]: 2: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13974#true} {13974#true} #108#return; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L272 TraceCheckUtils]: 4: Hoare triple {13974#true} call #t~ret9 := main(); {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L290 TraceCheckUtils]: 5: Hoare triple {13974#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L272 TraceCheckUtils]: 6: Hoare triple {13974#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L290 TraceCheckUtils]: 7: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L290 TraceCheckUtils]: 8: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L290 TraceCheckUtils]: 9: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13974#true} {13974#true} #94#return; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L272 TraceCheckUtils]: 11: Hoare triple {13974#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L290 TraceCheckUtils]: 12: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:05,655 INFO L290 TraceCheckUtils]: 13: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 14: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {13974#true} {13974#true} #96#return; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 16: Hoare triple {13974#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 17: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 18: Hoare triple {13974#true} assume !!(#t~post6 < 100);havoc #t~post6; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 19: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {13974#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 21: Hoare triple {13974#true} assume !!(#t~post7 < 100);havoc #t~post7; {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 22: Hoare triple {13974#true} assume !(~c~0 >= ~b~0); {13974#true} is VALID [2022-04-28 05:51:05,656 INFO L290 TraceCheckUtils]: 23: Hoare triple {13974#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {13974#true} is VALID [2022-04-28 05:51:05,657 INFO L290 TraceCheckUtils]: 24: Hoare triple {13974#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13974#true} is VALID [2022-04-28 05:51:05,657 INFO L290 TraceCheckUtils]: 25: Hoare triple {13974#true} assume !!(#t~post6 < 100);havoc #t~post6; {13974#true} is VALID [2022-04-28 05:51:05,661 INFO L290 TraceCheckUtils]: 26: Hoare triple {13974#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,661 INFO L290 TraceCheckUtils]: 27: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,662 INFO L290 TraceCheckUtils]: 28: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,662 INFO L290 TraceCheckUtils]: 29: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,663 INFO L290 TraceCheckUtils]: 30: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,663 INFO L290 TraceCheckUtils]: 31: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} assume !!(#t~post8 < 100);havoc #t~post8; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,663 INFO L272 TraceCheckUtils]: 32: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:05,663 INFO L290 TraceCheckUtils]: 33: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:05,663 INFO L290 TraceCheckUtils]: 34: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:05,664 INFO L290 TraceCheckUtils]: 35: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:05,664 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #98#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,664 INFO L272 TraceCheckUtils]: 37: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {13974#true} is VALID [2022-04-28 05:51:05,665 INFO L290 TraceCheckUtils]: 38: Hoare triple {13974#true} ~cond := #in~cond; {13974#true} is VALID [2022-04-28 05:51:05,665 INFO L290 TraceCheckUtils]: 39: Hoare triple {13974#true} assume !(0 == ~cond); {13974#true} is VALID [2022-04-28 05:51:05,665 INFO L290 TraceCheckUtils]: 40: Hoare triple {13974#true} assume true; {13974#true} is VALID [2022-04-28 05:51:05,666 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13974#true} {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} #100#return; {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} is VALID [2022-04-28 05:51:05,666 INFO L272 TraceCheckUtils]: 42: Hoare triple {14057#(and (= main_~c~0 main_~a~0) (= main_~k~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:05,667 INFO L290 TraceCheckUtils]: 43: Hoare triple {14106#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14110#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:05,667 INFO L290 TraceCheckUtils]: 44: Hoare triple {14110#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {13975#false} is VALID [2022-04-28 05:51:05,667 INFO L290 TraceCheckUtils]: 45: Hoare triple {13975#false} assume !false; {13975#false} is VALID [2022-04-28 05:51:05,668 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 7 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2022-04-28 05:51:05,668 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:05,668 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:05,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1652668933] [2022-04-28 05:51:05,668 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:05,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1617832209] [2022-04-28 05:51:05,668 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1617832209] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:05,668 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:05,668 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:05,669 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:05,669 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2031670383] [2022-04-28 05:51:05,669 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2031670383] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:05,669 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:05,669 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:05,669 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [285685199] [2022-04-28 05:51:05,669 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:05,669 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-28 05:51:05,670 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:05,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:05,700 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:05,700 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:05,701 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:05,701 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:05,701 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:05,701 INFO L87 Difference]: Start difference. First operand 258 states and 351 transitions. Second operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:06,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:06,570 INFO L93 Difference]: Finished difference Result 332 states and 473 transitions. [2022-04-28 05:51:06,570 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:06,570 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-28 05:51:06,570 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:06,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:06,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:06,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:06,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2022-04-28 05:51:06,572 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 70 transitions. [2022-04-28 05:51:06,632 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 05:51:06,642 INFO L225 Difference]: With dead ends: 332 [2022-04-28 05:51:06,642 INFO L226 Difference]: Without dead ends: 330 [2022-04-28 05:51:06,642 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 42 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:06,643 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 153 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:06,643 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 153 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:06,643 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 330 states. [2022-04-28 05:51:07,493 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 330 to 321. [2022-04-28 05:51:07,494 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:07,494 INFO L82 GeneralOperation]: Start isEquivalent. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:07,495 INFO L74 IsIncluded]: Start isIncluded. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:07,496 INFO L87 Difference]: Start difference. First operand 330 states. Second operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:07,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:07,506 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 05:51:07,506 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 05:51:07,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:07,507 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:07,508 INFO L74 IsIncluded]: Start isIncluded. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 05:51:07,508 INFO L87 Difference]: Start difference. First operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 330 states. [2022-04-28 05:51:07,518 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:07,518 INFO L93 Difference]: Finished difference Result 330 states and 471 transitions. [2022-04-28 05:51:07,518 INFO L276 IsEmpty]: Start isEmpty. Operand 330 states and 471 transitions. [2022-04-28 05:51:07,519 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:07,519 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:07,520 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:07,520 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:07,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 321 states, 213 states have (on average 1.3427230046948357) internal successors, (286), 223 states have internal predecessors, (286), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:07,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 321 states to 321 states and 462 transitions. [2022-04-28 05:51:07,532 INFO L78 Accepts]: Start accepts. Automaton has 321 states and 462 transitions. Word has length 46 [2022-04-28 05:51:07,532 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:07,532 INFO L495 AbstractCegarLoop]: Abstraction has 321 states and 462 transitions. [2022-04-28 05:51:07,532 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.2) internal successors, (26), 4 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-28 05:51:07,532 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 321 states and 462 transitions. [2022-04-28 05:51:08,146 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 462 edges. 462 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:08,147 INFO L276 IsEmpty]: Start isEmpty. Operand 321 states and 462 transitions. [2022-04-28 05:51:08,147 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-28 05:51:08,147 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:08,148 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:08,173 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 05:51:08,348 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 05:51:08,348 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:08,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:08,348 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 1 times [2022-04-28 05:51:08,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:08,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [401133618] [2022-04-28 05:51:08,349 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:08,349 INFO L85 PathProgramCache]: Analyzing trace with hash -522797827, now seen corresponding path program 2 times [2022-04-28 05:51:08,349 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:08,349 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1860994386] [2022-04-28 05:51:08,349 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:08,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:08,361 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:08,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [959294857] [2022-04-28 05:51:08,361 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:08,361 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:08,362 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:08,362 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 05:51:08,366 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 05:51:08,406 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:08,407 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:08,407 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 05:51:08,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:08,425 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:08,676 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 05:51:08,677 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,677 INFO L290 TraceCheckUtils]: 2: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,678 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16092#(<= ~counter~0 0)} {16084#true} #108#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,678 INFO L272 TraceCheckUtils]: 4: Hoare triple {16092#(<= ~counter~0 0)} call #t~ret9 := main(); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,678 INFO L290 TraceCheckUtils]: 5: Hoare triple {16092#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,679 INFO L272 TraceCheckUtils]: 6: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,679 INFO L290 TraceCheckUtils]: 7: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,679 INFO L290 TraceCheckUtils]: 8: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,680 INFO L290 TraceCheckUtils]: 9: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,680 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #94#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,680 INFO L272 TraceCheckUtils]: 11: Hoare triple {16092#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,681 INFO L290 TraceCheckUtils]: 12: Hoare triple {16092#(<= ~counter~0 0)} ~cond := #in~cond; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,681 INFO L290 TraceCheckUtils]: 13: Hoare triple {16092#(<= ~counter~0 0)} assume !(0 == ~cond); {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,681 INFO L290 TraceCheckUtils]: 14: Hoare triple {16092#(<= ~counter~0 0)} assume true; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,682 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16092#(<= ~counter~0 0)} {16092#(<= ~counter~0 0)} #96#return; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,682 INFO L290 TraceCheckUtils]: 16: Hoare triple {16092#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16092#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:08,683 INFO L290 TraceCheckUtils]: 17: Hoare triple {16092#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:08,683 INFO L290 TraceCheckUtils]: 18: Hoare triple {16141#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:08,683 INFO L290 TraceCheckUtils]: 19: Hoare triple {16141#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16141#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:08,684 INFO L290 TraceCheckUtils]: 20: Hoare triple {16141#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:08,684 INFO L290 TraceCheckUtils]: 21: Hoare triple {16151#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:08,684 INFO L290 TraceCheckUtils]: 22: Hoare triple {16151#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16151#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:08,685 INFO L290 TraceCheckUtils]: 23: Hoare triple {16151#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,685 INFO L290 TraceCheckUtils]: 24: Hoare triple {16161#(<= ~counter~0 3)} assume !!(#t~post8 < 100);havoc #t~post8; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,685 INFO L272 TraceCheckUtils]: 25: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,686 INFO L290 TraceCheckUtils]: 26: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,686 INFO L290 TraceCheckUtils]: 27: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,686 INFO L290 TraceCheckUtils]: 28: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,687 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #98#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,687 INFO L272 TraceCheckUtils]: 30: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,688 INFO L290 TraceCheckUtils]: 31: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,688 INFO L290 TraceCheckUtils]: 32: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,688 INFO L290 TraceCheckUtils]: 33: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,689 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #100#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,689 INFO L272 TraceCheckUtils]: 35: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,689 INFO L290 TraceCheckUtils]: 36: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,690 INFO L290 TraceCheckUtils]: 37: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,690 INFO L290 TraceCheckUtils]: 38: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,691 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #102#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,691 INFO L272 TraceCheckUtils]: 40: Hoare triple {16161#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,691 INFO L290 TraceCheckUtils]: 41: Hoare triple {16161#(<= ~counter~0 3)} ~cond := #in~cond; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,692 INFO L290 TraceCheckUtils]: 42: Hoare triple {16161#(<= ~counter~0 3)} assume !(0 == ~cond); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,692 INFO L290 TraceCheckUtils]: 43: Hoare triple {16161#(<= ~counter~0 3)} assume true; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,692 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16161#(<= ~counter~0 3)} {16161#(<= ~counter~0 3)} #104#return; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,693 INFO L290 TraceCheckUtils]: 45: Hoare triple {16161#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,693 INFO L290 TraceCheckUtils]: 46: Hoare triple {16161#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16161#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:08,693 INFO L290 TraceCheckUtils]: 47: Hoare triple {16161#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:08,694 INFO L290 TraceCheckUtils]: 48: Hoare triple {16234#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:08,694 INFO L290 TraceCheckUtils]: 49: Hoare triple {16234#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:08,694 INFO L290 TraceCheckUtils]: 50: Hoare triple {16234#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {16234#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:08,695 INFO L290 TraceCheckUtils]: 51: Hoare triple {16234#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16247#(<= |main_#t~post6| 4)} is VALID [2022-04-28 05:51:08,695 INFO L290 TraceCheckUtils]: 52: Hoare triple {16247#(<= |main_#t~post6| 4)} assume !(#t~post6 < 100);havoc #t~post6; {16085#false} is VALID [2022-04-28 05:51:08,695 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {16085#false} is VALID [2022-04-28 05:51:08,695 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 05:51:08,695 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 05:51:08,695 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 05:51:08,695 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:08,695 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:08,981 INFO L290 TraceCheckUtils]: 56: Hoare triple {16085#false} assume !false; {16085#false} is VALID [2022-04-28 05:51:08,981 INFO L290 TraceCheckUtils]: 55: Hoare triple {16085#false} assume 0 == ~cond; {16085#false} is VALID [2022-04-28 05:51:08,981 INFO L290 TraceCheckUtils]: 54: Hoare triple {16085#false} ~cond := #in~cond; {16085#false} is VALID [2022-04-28 05:51:08,981 INFO L272 TraceCheckUtils]: 53: Hoare triple {16085#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {16085#false} is VALID [2022-04-28 05:51:08,982 INFO L290 TraceCheckUtils]: 52: Hoare triple {16275#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {16085#false} is VALID [2022-04-28 05:51:08,982 INFO L290 TraceCheckUtils]: 51: Hoare triple {16279#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16275#(< |main_#t~post6| 100)} is VALID [2022-04-28 05:51:08,987 INFO L290 TraceCheckUtils]: 50: Hoare triple {16279#(< ~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; {16279#(< ~counter~0 100)} is VALID [2022-04-28 05:51:08,988 INFO L290 TraceCheckUtils]: 49: Hoare triple {16279#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {16279#(< ~counter~0 100)} is VALID [2022-04-28 05:51:08,988 INFO L290 TraceCheckUtils]: 48: Hoare triple {16279#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {16279#(< ~counter~0 100)} is VALID [2022-04-28 05:51:08,989 INFO L290 TraceCheckUtils]: 47: Hoare triple {16292#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16279#(< ~counter~0 100)} is VALID [2022-04-28 05:51:08,989 INFO L290 TraceCheckUtils]: 46: Hoare triple {16292#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,989 INFO L290 TraceCheckUtils]: 45: Hoare triple {16292#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,990 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {16084#true} {16292#(< ~counter~0 99)} #104#return; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,990 INFO L290 TraceCheckUtils]: 43: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:08,990 INFO L290 TraceCheckUtils]: 42: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:08,990 INFO L290 TraceCheckUtils]: 41: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:08,990 INFO L272 TraceCheckUtils]: 40: Hoare triple {16292#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:08,991 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {16084#true} {16292#(< ~counter~0 99)} #102#return; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,991 INFO L290 TraceCheckUtils]: 38: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:08,991 INFO L290 TraceCheckUtils]: 37: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:08,991 INFO L290 TraceCheckUtils]: 36: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:08,991 INFO L272 TraceCheckUtils]: 35: Hoare triple {16292#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:08,991 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {16084#true} {16292#(< ~counter~0 99)} #100#return; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,992 INFO L290 TraceCheckUtils]: 33: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:08,992 INFO L290 TraceCheckUtils]: 32: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:08,992 INFO L290 TraceCheckUtils]: 31: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:08,992 INFO L272 TraceCheckUtils]: 30: Hoare triple {16292#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:08,992 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {16084#true} {16292#(< ~counter~0 99)} #98#return; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,992 INFO L290 TraceCheckUtils]: 28: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:08,992 INFO L290 TraceCheckUtils]: 27: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:08,993 INFO L290 TraceCheckUtils]: 26: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:08,993 INFO L272 TraceCheckUtils]: 25: Hoare triple {16292#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:08,993 INFO L290 TraceCheckUtils]: 24: Hoare triple {16292#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,994 INFO L290 TraceCheckUtils]: 23: Hoare triple {16365#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {16292#(< ~counter~0 99)} is VALID [2022-04-28 05:51:08,995 INFO L290 TraceCheckUtils]: 22: Hoare triple {16365#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {16365#(< ~counter~0 98)} is VALID [2022-04-28 05:51:08,995 INFO L290 TraceCheckUtils]: 21: Hoare triple {16365#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {16365#(< ~counter~0 98)} is VALID [2022-04-28 05:51:08,996 INFO L290 TraceCheckUtils]: 20: Hoare triple {16375#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16365#(< ~counter~0 98)} is VALID [2022-04-28 05:51:08,996 INFO L290 TraceCheckUtils]: 19: Hoare triple {16375#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {16375#(< ~counter~0 97)} is VALID [2022-04-28 05:51:08,997 INFO L290 TraceCheckUtils]: 18: Hoare triple {16375#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {16375#(< ~counter~0 97)} is VALID [2022-04-28 05:51:08,997 INFO L290 TraceCheckUtils]: 17: Hoare triple {16385#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16375#(< ~counter~0 97)} is VALID [2022-04-28 05:51:08,998 INFO L290 TraceCheckUtils]: 16: Hoare triple {16385#(< ~counter~0 96)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:08,998 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {16084#true} {16385#(< ~counter~0 96)} #96#return; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:08,998 INFO L290 TraceCheckUtils]: 14: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:08,999 INFO L290 TraceCheckUtils]: 13: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:08,999 INFO L290 TraceCheckUtils]: 12: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:08,999 INFO L272 TraceCheckUtils]: 11: Hoare triple {16385#(< ~counter~0 96)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:08,999 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16084#true} {16385#(< ~counter~0 96)} #94#return; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:08,999 INFO L290 TraceCheckUtils]: 9: Hoare triple {16084#true} assume true; {16084#true} is VALID [2022-04-28 05:51:09,000 INFO L290 TraceCheckUtils]: 8: Hoare triple {16084#true} assume !(0 == ~cond); {16084#true} is VALID [2022-04-28 05:51:09,000 INFO L290 TraceCheckUtils]: 7: Hoare triple {16084#true} ~cond := #in~cond; {16084#true} is VALID [2022-04-28 05:51:09,000 INFO L272 TraceCheckUtils]: 6: Hoare triple {16385#(< ~counter~0 96)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {16084#true} is VALID [2022-04-28 05:51:09,000 INFO L290 TraceCheckUtils]: 5: Hoare triple {16385#(< ~counter~0 96)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:09,001 INFO L272 TraceCheckUtils]: 4: Hoare triple {16385#(< ~counter~0 96)} call #t~ret9 := main(); {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:09,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16385#(< ~counter~0 96)} {16084#true} #108#return; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:09,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {16385#(< ~counter~0 96)} assume true; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:09,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {16084#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {16385#(< ~counter~0 96)} is VALID [2022-04-28 05:51:09,002 INFO L272 TraceCheckUtils]: 0: Hoare triple {16084#true} call ULTIMATE.init(); {16084#true} is VALID [2022-04-28 05:51:09,002 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 8 proven. 5 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:09,002 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:09,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1860994386] [2022-04-28 05:51:09,003 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:09,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [959294857] [2022-04-28 05:51:09,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [959294857] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:09,003 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:09,003 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-28 05:51:09,003 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:09,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [401133618] [2022-04-28 05:51:09,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [401133618] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:09,003 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:09,004 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:09,004 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [173493201] [2022-04-28 05:51:09,004 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:09,004 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 05:51:09,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:09,004 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:09,044 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 05:51:09,044 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:09,044 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:09,045 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:09,045 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-28 05:51:09,045 INFO L87 Difference]: Start difference. First operand 321 states and 462 transitions. Second operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:09,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:09,920 INFO L93 Difference]: Finished difference Result 335 states and 475 transitions. [2022-04-28 05:51:09,920 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 05:51:09,921 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 57 [2022-04-28 05:51:09,921 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:09,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:09,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 05:51:09,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:09,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 106 transitions. [2022-04-28 05:51:09,924 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 106 transitions. [2022-04-28 05:51:10,011 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 05:51:10,020 INFO L225 Difference]: With dead ends: 335 [2022-04-28 05:51:10,020 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 05:51:10,021 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 101 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:10,021 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 46 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:10,021 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 177 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:10,022 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 05:51:10,739 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 324. [2022-04-28 05:51:10,739 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:10,739 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:10,740 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:10,740 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:10,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:10,752 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 05:51:10,752 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 05:51:10,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:10,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:10,754 INFO L74 IsIncluded]: Start isIncluded. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 05:51:10,755 INFO L87 Difference]: Start difference. First operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) Second operand 328 states. [2022-04-28 05:51:10,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:10,765 INFO L93 Difference]: Finished difference Result 328 states and 468 transitions. [2022-04-28 05:51:10,765 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 468 transitions. [2022-04-28 05:51:10,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:10,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:10,767 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:10,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:10,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 324 states, 216 states have (on average 1.337962962962963) internal successors, (289), 226 states have internal predecessors, (289), 89 states have call successors, (89), 19 states have call predecessors, (89), 18 states have return successors, (87), 78 states have call predecessors, (87), 87 states have call successors, (87) [2022-04-28 05:51:10,778 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 324 states to 324 states and 465 transitions. [2022-04-28 05:51:10,779 INFO L78 Accepts]: Start accepts. Automaton has 324 states and 465 transitions. Word has length 57 [2022-04-28 05:51:10,779 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:10,779 INFO L495 AbstractCegarLoop]: Abstraction has 324 states and 465 transitions. [2022-04-28 05:51:10,779 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.625) internal successors, (29), 7 states have internal predecessors, (29), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:10,779 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 324 states and 465 transitions. [2022-04-28 05:51:11,395 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 465 edges. 465 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:11,395 INFO L276 IsEmpty]: Start isEmpty. Operand 324 states and 465 transitions. [2022-04-28 05:51:11,395 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 05:51:11,396 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:11,396 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:11,421 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 05:51:11,596 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 05:51:11,596 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:11,597 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:11,597 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 1 times [2022-04-28 05:51:11,597 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:11,597 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [301257129] [2022-04-28 05:51:11,597 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:11,597 INFO L85 PathProgramCache]: Analyzing trace with hash 958119025, now seen corresponding path program 2 times [2022-04-28 05:51:11,598 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:11,598 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1284208605] [2022-04-28 05:51:11,598 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:11,598 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:11,619 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:11,619 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [199602874] [2022-04-28 05:51:11,619 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:11,619 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:11,620 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:11,632 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 05:51:11,633 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 05:51:11,674 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:11,675 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:11,676 INFO L263 TraceCheckSpWp]: Trace formula consists of 187 conjuncts, 52 conjunts are in the unsatisfiable core [2022-04-28 05:51:11,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:11,688 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:12,454 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:12,454 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 05:51:12,455 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:12,455 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:12,455 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:12,455 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:12,455 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 05:51:12,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,456 INFO L290 TraceCheckUtils]: 19: Hoare triple {18470#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,457 INFO L290 TraceCheckUtils]: 20: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,457 INFO L290 TraceCheckUtils]: 21: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,458 INFO L290 TraceCheckUtils]: 22: Hoare triple {18480#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,458 INFO L290 TraceCheckUtils]: 23: Hoare triple {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,459 INFO L290 TraceCheckUtils]: 24: Hoare triple {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,459 INFO L272 TraceCheckUtils]: 25: Hoare triple {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:12,459 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:12,459 INFO L290 TraceCheckUtils]: 27: Hoare triple {18503#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:12,460 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:12,461 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18490#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,461 INFO L272 TraceCheckUtils]: 30: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:12,461 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:12,461 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:12,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:12,462 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,462 INFO L272 TraceCheckUtils]: 35: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:12,462 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:12,462 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:12,462 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:12,463 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,463 INFO L272 TraceCheckUtils]: 40: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:12,463 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:12,463 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:12,463 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:12,464 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,464 INFO L290 TraceCheckUtils]: 45: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,465 INFO L290 TraceCheckUtils]: 46: Hoare triple {18514#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,465 INFO L290 TraceCheckUtils]: 47: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,466 INFO L290 TraceCheckUtils]: 48: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,466 INFO L290 TraceCheckUtils]: 49: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:51:12,467 INFO L290 TraceCheckUtils]: 50: Hoare triple {18566#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 main_~b~0)) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 1) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:12,467 INFO L290 TraceCheckUtils]: 51: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:12,468 INFO L290 TraceCheckUtils]: 52: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:12,468 INFO L290 TraceCheckUtils]: 53: Hoare triple {18579#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= (+ main_~x~0 (* (- 1) main_~y~0)) main_~b~0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} assume !(0 != ~b~0); {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 05:51:12,469 INFO L272 TraceCheckUtils]: 54: Hoare triple {18589#(and (= (+ main_~q~0 main_~p~0) 1) (= main_~p~0 0) (= main_~r~0 1) (= (+ main_~x~0 (* (- 1) main_~y~0)) 0) (= main_~a~0 main_~y~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:12,469 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:12,469 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 05:51:12,469 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 05:51:12,470 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:12,470 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:25,315 INFO L290 TraceCheckUtils]: 57: Hoare triple {18418#false} assume !false; {18418#false} is VALID [2022-04-28 05:51:25,315 INFO L290 TraceCheckUtils]: 56: Hoare triple {18597#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {18418#false} is VALID [2022-04-28 05:51:25,316 INFO L290 TraceCheckUtils]: 55: Hoare triple {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {18597#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:25,317 INFO L272 TraceCheckUtils]: 54: Hoare triple {18613#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {18593#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:25,317 INFO L290 TraceCheckUtils]: 53: Hoare triple {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {18613#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:51:25,318 INFO L290 TraceCheckUtils]: 52: Hoare triple {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:51:25,318 INFO L290 TraceCheckUtils]: 51: Hoare triple {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:51:25,507 INFO L290 TraceCheckUtils]: 50: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {18617#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:51:25,508 INFO L290 TraceCheckUtils]: 49: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,509 INFO L290 TraceCheckUtils]: 48: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,509 INFO L290 TraceCheckUtils]: 47: Hoare triple {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,594 INFO L290 TraceCheckUtils]: 46: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {18627#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,595 INFO L290 TraceCheckUtils]: 45: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,596 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {18417#true} {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,596 INFO L290 TraceCheckUtils]: 43: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:25,596 INFO L290 TraceCheckUtils]: 42: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:25,596 INFO L290 TraceCheckUtils]: 41: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:25,596 INFO L272 TraceCheckUtils]: 40: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:25,597 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {18417#true} {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,597 INFO L290 TraceCheckUtils]: 38: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:25,597 INFO L290 TraceCheckUtils]: 37: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:25,597 INFO L290 TraceCheckUtils]: 36: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:25,597 INFO L272 TraceCheckUtils]: 35: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:25,598 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {18417#true} {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,598 INFO L290 TraceCheckUtils]: 33: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:25,599 INFO L290 TraceCheckUtils]: 32: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:25,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:25,599 INFO L272 TraceCheckUtils]: 30: Hoare triple {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:25,600 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {18640#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,600 INFO L290 TraceCheckUtils]: 28: Hoare triple {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:25,601 INFO L290 TraceCheckUtils]: 27: Hoare triple {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {18507#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:51:25,601 INFO L290 TraceCheckUtils]: 26: Hoare triple {18417#true} ~cond := #in~cond; {18702#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:51:25,601 INFO L272 TraceCheckUtils]: 25: Hoare triple {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:25,602 INFO L290 TraceCheckUtils]: 24: Hoare triple {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,603 INFO L290 TraceCheckUtils]: 23: Hoare triple {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,604 INFO L290 TraceCheckUtils]: 22: Hoare triple {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {18692#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:51:25,604 INFO L290 TraceCheckUtils]: 21: Hoare triple {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post7 < 100);havoc #t~post7; {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:25,605 INFO L290 TraceCheckUtils]: 20: Hoare triple {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:25,606 INFO L290 TraceCheckUtils]: 19: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {18715#(or (= (+ (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 1) main_~q~0))) main_~b~0 (* main_~y~0 (+ main_~r~0 (* (* (+ main_~k~0 1) main_~s~0) (- 1))))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= (+ main_~c~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:25,607 INFO L290 TraceCheckUtils]: 18: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:25,607 INFO L290 TraceCheckUtils]: 17: Hoare triple {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:25,608 INFO L290 TraceCheckUtils]: 16: Hoare triple {18417#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {18725#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ (* (+ main_~r~0 (* (- 1) main_~s~0)) main_~y~0) main_~b~0 (* main_~x~0 (+ main_~p~0 (* (- 1) main_~q~0)))) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (not (= (+ main_~a~0 (* (- 1) main_~b~0)) 0)))} is VALID [2022-04-28 05:51:25,608 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {18417#true} {18417#true} #96#return; {18417#true} is VALID [2022-04-28 05:51:25,608 INFO L290 TraceCheckUtils]: 14: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:25,608 INFO L290 TraceCheckUtils]: 13: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:25,608 INFO L290 TraceCheckUtils]: 12: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:25,608 INFO L272 TraceCheckUtils]: 11: Hoare triple {18417#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:25,608 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18417#true} {18417#true} #94#return; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L290 TraceCheckUtils]: 9: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L290 TraceCheckUtils]: 8: Hoare triple {18417#true} assume !(0 == ~cond); {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L290 TraceCheckUtils]: 7: Hoare triple {18417#true} ~cond := #in~cond; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L272 TraceCheckUtils]: 6: Hoare triple {18417#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L290 TraceCheckUtils]: 5: Hoare triple {18417#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L272 TraceCheckUtils]: 4: Hoare triple {18417#true} call #t~ret9 := main(); {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18417#true} {18417#true} #108#return; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L290 TraceCheckUtils]: 2: Hoare triple {18417#true} assume true; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L290 TraceCheckUtils]: 1: Hoare triple {18417#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {18417#true} is VALID [2022-04-28 05:51:25,609 INFO L272 TraceCheckUtils]: 0: Hoare triple {18417#true} call ULTIMATE.init(); {18417#true} is VALID [2022-04-28 05:51:25,610 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 7 proven. 16 refuted. 0 times theorem prover too weak. 19 trivial. 0 not checked. [2022-04-28 05:51:25,610 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:25,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1284208605] [2022-04-28 05:51:25,610 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:25,610 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [199602874] [2022-04-28 05:51:25,610 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [199602874] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:25,611 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:25,611 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 21 [2022-04-28 05:51:25,611 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:25,611 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [301257129] [2022-04-28 05:51:25,611 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [301257129] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:25,611 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:25,611 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:51:25,611 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [699787351] [2022-04-28 05:51:25,611 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:25,612 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 05:51:25,612 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:25,612 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:25,654 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:25,654 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:51:25,654 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:25,655 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:51:25,655 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:51:25,655 INFO L87 Difference]: Start difference. First operand 324 states and 465 transitions. Second operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:28,254 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:28,255 INFO L93 Difference]: Finished difference Result 384 states and 559 transitions. [2022-04-28 05:51:28,255 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:51:28,255 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 58 [2022-04-28 05:51:28,255 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:28,255 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:28,257 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 05:51:28,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:28,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 149 transitions. [2022-04-28 05:51:28,259 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 149 transitions. [2022-04-28 05:51:28,427 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 149 edges. 149 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:28,438 INFO L225 Difference]: With dead ends: 384 [2022-04-28 05:51:28,438 INFO L226 Difference]: Without dead ends: 381 [2022-04-28 05:51:28,439 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 95 SyntacticMatches, 1 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 95 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=101, Invalid=499, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:51:28,439 INFO L413 NwaCegarLoop]: 57 mSDtfsCounter, 66 mSDsluCounter, 342 mSDsCounter, 0 mSdLazyCounter, 541 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 586 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 541 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:28,439 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 399 Invalid, 586 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 541 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:51:28,440 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 381 states. [2022-04-28 05:51:29,440 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 381 to 377. [2022-04-28 05:51:29,441 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:29,441 INFO L82 GeneralOperation]: Start isEquivalent. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:29,442 INFO L74 IsIncluded]: Start isIncluded. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:29,442 INFO L87 Difference]: Start difference. First operand 381 states. Second operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:29,455 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:29,455 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 05:51:29,455 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 05:51:29,456 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:29,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:29,457 INFO L74 IsIncluded]: Start isIncluded. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 05:51:29,458 INFO L87 Difference]: Start difference. First operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) Second operand 381 states. [2022-04-28 05:51:29,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:29,472 INFO L93 Difference]: Finished difference Result 381 states and 555 transitions. [2022-04-28 05:51:29,472 INFO L276 IsEmpty]: Start isEmpty. Operand 381 states and 555 transitions. [2022-04-28 05:51:29,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:29,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:29,474 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:29,474 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:29,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 377 states, 243 states have (on average 1.345679012345679) internal successors, (327), 256 states have internal predecessors, (327), 113 states have call successors, (113), 21 states have call predecessors, (113), 20 states have return successors, (111), 99 states have call predecessors, (111), 111 states have call successors, (111) [2022-04-28 05:51:29,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 377 states to 377 states and 551 transitions. [2022-04-28 05:51:29,490 INFO L78 Accepts]: Start accepts. Automaton has 377 states and 551 transitions. Word has length 58 [2022-04-28 05:51:29,490 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:29,490 INFO L495 AbstractCegarLoop]: Abstraction has 377 states and 551 transitions. [2022-04-28 05:51:29,490 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.75) internal successors, (33), 12 states have internal predecessors, (33), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:29,490 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 377 states and 551 transitions. [2022-04-28 05:51:30,210 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 551 edges. 551 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:30,210 INFO L276 IsEmpty]: Start isEmpty. Operand 377 states and 551 transitions. [2022-04-28 05:51:30,211 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 05:51:30,211 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:30,211 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:30,228 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 05:51:30,415 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 05:51:30,415 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:30,416 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:30,416 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 1 times [2022-04-28 05:51:30,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:30,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1348130544] [2022-04-28 05:51:30,416 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:30,416 INFO L85 PathProgramCache]: Analyzing trace with hash 27973409, now seen corresponding path program 2 times [2022-04-28 05:51:30,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:30,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1827384030] [2022-04-28 05:51:30,417 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:30,417 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:30,427 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:30,427 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [967634363] [2022-04-28 05:51:30,428 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:30,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:30,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:30,429 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 05:51:30,430 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 05:51:30,477 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:30,477 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:30,478 INFO L263 TraceCheckSpWp]: Trace formula consists of 214 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:51:30,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:30,492 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:30,785 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 05:51:30,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,786 INFO L290 TraceCheckUtils]: 2: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,787 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21085#(<= ~counter~0 0)} {21077#true} #108#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,787 INFO L272 TraceCheckUtils]: 4: Hoare triple {21085#(<= ~counter~0 0)} call #t~ret9 := main(); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,787 INFO L290 TraceCheckUtils]: 5: Hoare triple {21085#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,788 INFO L272 TraceCheckUtils]: 6: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,788 INFO L290 TraceCheckUtils]: 7: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,788 INFO L290 TraceCheckUtils]: 8: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,788 INFO L290 TraceCheckUtils]: 9: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,789 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #94#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,789 INFO L272 TraceCheckUtils]: 11: Hoare triple {21085#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,790 INFO L290 TraceCheckUtils]: 12: Hoare triple {21085#(<= ~counter~0 0)} ~cond := #in~cond; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {21085#(<= ~counter~0 0)} assume !(0 == ~cond); {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {21085#(<= ~counter~0 0)} assume true; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,791 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21085#(<= ~counter~0 0)} {21085#(<= ~counter~0 0)} #96#return; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,791 INFO L290 TraceCheckUtils]: 16: Hoare triple {21085#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21085#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:30,792 INFO L290 TraceCheckUtils]: 17: Hoare triple {21085#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:30,792 INFO L290 TraceCheckUtils]: 18: Hoare triple {21134#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:30,793 INFO L290 TraceCheckUtils]: 19: Hoare triple {21134#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21134#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:30,794 INFO L290 TraceCheckUtils]: 20: Hoare triple {21134#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:30,794 INFO L290 TraceCheckUtils]: 21: Hoare triple {21144#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:30,794 INFO L290 TraceCheckUtils]: 22: Hoare triple {21144#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:30,794 INFO L290 TraceCheckUtils]: 23: Hoare triple {21144#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21144#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:30,795 INFO L290 TraceCheckUtils]: 24: Hoare triple {21144#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:30,795 INFO L290 TraceCheckUtils]: 25: Hoare triple {21157#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:30,795 INFO L290 TraceCheckUtils]: 26: Hoare triple {21157#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21157#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:30,796 INFO L290 TraceCheckUtils]: 27: Hoare triple {21157#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:30,796 INFO L290 TraceCheckUtils]: 28: Hoare triple {21167#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:30,797 INFO L290 TraceCheckUtils]: 29: Hoare triple {21167#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21167#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:30,797 INFO L290 TraceCheckUtils]: 30: Hoare triple {21167#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,797 INFO L290 TraceCheckUtils]: 31: Hoare triple {21177#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,798 INFO L272 TraceCheckUtils]: 32: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,798 INFO L290 TraceCheckUtils]: 33: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,799 INFO L290 TraceCheckUtils]: 34: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,799 INFO L290 TraceCheckUtils]: 35: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,799 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #98#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,800 INFO L272 TraceCheckUtils]: 37: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,800 INFO L290 TraceCheckUtils]: 38: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,801 INFO L290 TraceCheckUtils]: 39: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,801 INFO L290 TraceCheckUtils]: 40: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,801 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #100#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,802 INFO L272 TraceCheckUtils]: 42: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,802 INFO L290 TraceCheckUtils]: 43: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,803 INFO L290 TraceCheckUtils]: 44: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,803 INFO L290 TraceCheckUtils]: 45: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,803 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #102#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,804 INFO L272 TraceCheckUtils]: 47: Hoare triple {21177#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,804 INFO L290 TraceCheckUtils]: 48: Hoare triple {21177#(<= ~counter~0 5)} ~cond := #in~cond; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,804 INFO L290 TraceCheckUtils]: 49: Hoare triple {21177#(<= ~counter~0 5)} assume !(0 == ~cond); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,805 INFO L290 TraceCheckUtils]: 50: Hoare triple {21177#(<= ~counter~0 5)} assume true; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,805 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21177#(<= ~counter~0 5)} {21177#(<= ~counter~0 5)} #104#return; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,805 INFO L290 TraceCheckUtils]: 52: Hoare triple {21177#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,806 INFO L290 TraceCheckUtils]: 53: Hoare triple {21177#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21177#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:30,806 INFO L290 TraceCheckUtils]: 54: Hoare triple {21177#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21250#(<= |main_#t~post7| 5)} is VALID [2022-04-28 05:51:30,806 INFO L290 TraceCheckUtils]: 55: Hoare triple {21250#(<= |main_#t~post7| 5)} assume !(#t~post7 < 100);havoc #t~post7; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 100);havoc #t~post6; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 05:51:30,807 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:30,807 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:31,135 INFO L290 TraceCheckUtils]: 62: Hoare triple {21078#false} assume !false; {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L290 TraceCheckUtils]: 61: Hoare triple {21078#false} assume 0 == ~cond; {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L290 TraceCheckUtils]: 60: Hoare triple {21078#false} ~cond := #in~cond; {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L272 TraceCheckUtils]: 59: Hoare triple {21078#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L290 TraceCheckUtils]: 58: Hoare triple {21078#false} assume !(#t~post6 < 100);havoc #t~post6; {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L290 TraceCheckUtils]: 57: Hoare triple {21078#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L290 TraceCheckUtils]: 56: Hoare triple {21078#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {21078#false} is VALID [2022-04-28 05:51:31,136 INFO L290 TraceCheckUtils]: 55: Hoare triple {21296#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {21078#false} is VALID [2022-04-28 05:51:31,137 INFO L290 TraceCheckUtils]: 54: Hoare triple {21300#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21296#(< |main_#t~post7| 100)} is VALID [2022-04-28 05:51:31,137 INFO L290 TraceCheckUtils]: 53: Hoare triple {21300#(< ~counter~0 100)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,137 INFO L290 TraceCheckUtils]: 52: Hoare triple {21300#(< ~counter~0 100)} assume !(~c~0 >= 2 * ~v~0); {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,138 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {21077#true} {21300#(< ~counter~0 100)} #104#return; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,138 INFO L290 TraceCheckUtils]: 50: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:31,138 INFO L290 TraceCheckUtils]: 49: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:31,138 INFO L290 TraceCheckUtils]: 48: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:31,138 INFO L272 TraceCheckUtils]: 47: Hoare triple {21300#(< ~counter~0 100)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:31,139 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21077#true} {21300#(< ~counter~0 100)} #102#return; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,139 INFO L290 TraceCheckUtils]: 45: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:31,139 INFO L290 TraceCheckUtils]: 44: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:31,139 INFO L290 TraceCheckUtils]: 43: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:31,139 INFO L272 TraceCheckUtils]: 42: Hoare triple {21300#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:31,139 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21077#true} {21300#(< ~counter~0 100)} #100#return; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,140 INFO L290 TraceCheckUtils]: 40: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:31,140 INFO L290 TraceCheckUtils]: 39: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:31,140 INFO L290 TraceCheckUtils]: 38: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:31,140 INFO L272 TraceCheckUtils]: 37: Hoare triple {21300#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:31,140 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21077#true} {21300#(< ~counter~0 100)} #98#return; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,140 INFO L290 TraceCheckUtils]: 35: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:31,141 INFO L290 TraceCheckUtils]: 34: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:31,141 INFO L290 TraceCheckUtils]: 33: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:31,141 INFO L272 TraceCheckUtils]: 32: Hoare triple {21300#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:31,141 INFO L290 TraceCheckUtils]: 31: Hoare triple {21300#(< ~counter~0 100)} assume !!(#t~post8 < 100);havoc #t~post8; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,142 INFO L290 TraceCheckUtils]: 30: Hoare triple {21373#(< ~counter~0 99)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {21300#(< ~counter~0 100)} is VALID [2022-04-28 05:51:31,142 INFO L290 TraceCheckUtils]: 29: Hoare triple {21373#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {21373#(< ~counter~0 99)} is VALID [2022-04-28 05:51:31,142 INFO L290 TraceCheckUtils]: 28: Hoare triple {21373#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {21373#(< ~counter~0 99)} is VALID [2022-04-28 05:51:31,143 INFO L290 TraceCheckUtils]: 27: Hoare triple {21383#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21373#(< ~counter~0 99)} is VALID [2022-04-28 05:51:31,143 INFO L290 TraceCheckUtils]: 26: Hoare triple {21383#(< ~counter~0 98)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21383#(< ~counter~0 98)} is VALID [2022-04-28 05:51:31,143 INFO L290 TraceCheckUtils]: 25: Hoare triple {21383#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {21383#(< ~counter~0 98)} is VALID [2022-04-28 05:51:31,144 INFO L290 TraceCheckUtils]: 24: Hoare triple {21393#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21383#(< ~counter~0 98)} is VALID [2022-04-28 05:51:31,144 INFO L290 TraceCheckUtils]: 23: Hoare triple {21393#(< ~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; {21393#(< ~counter~0 97)} is VALID [2022-04-28 05:51:31,144 INFO L290 TraceCheckUtils]: 22: Hoare triple {21393#(< ~counter~0 97)} assume !(~c~0 >= ~b~0); {21393#(< ~counter~0 97)} is VALID [2022-04-28 05:51:31,145 INFO L290 TraceCheckUtils]: 21: Hoare triple {21393#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {21393#(< ~counter~0 97)} is VALID [2022-04-28 05:51:31,145 INFO L290 TraceCheckUtils]: 20: Hoare triple {21406#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {21393#(< ~counter~0 97)} is VALID [2022-04-28 05:51:31,145 INFO L290 TraceCheckUtils]: 19: Hoare triple {21406#(< ~counter~0 96)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {21406#(< ~counter~0 96)} is VALID [2022-04-28 05:51:31,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {21406#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {21406#(< ~counter~0 96)} is VALID [2022-04-28 05:51:31,146 INFO L290 TraceCheckUtils]: 17: Hoare triple {21416#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21406#(< ~counter~0 96)} is VALID [2022-04-28 05:51:31,146 INFO L290 TraceCheckUtils]: 16: Hoare triple {21416#(< ~counter~0 95)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,147 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {21077#true} {21416#(< ~counter~0 95)} #96#return; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,147 INFO L290 TraceCheckUtils]: 14: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:31,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:31,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:31,147 INFO L272 TraceCheckUtils]: 11: Hoare triple {21416#(< ~counter~0 95)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:31,148 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21077#true} {21416#(< ~counter~0 95)} #94#return; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,148 INFO L290 TraceCheckUtils]: 9: Hoare triple {21077#true} assume true; {21077#true} is VALID [2022-04-28 05:51:31,148 INFO L290 TraceCheckUtils]: 8: Hoare triple {21077#true} assume !(0 == ~cond); {21077#true} is VALID [2022-04-28 05:51:31,148 INFO L290 TraceCheckUtils]: 7: Hoare triple {21077#true} ~cond := #in~cond; {21077#true} is VALID [2022-04-28 05:51:31,148 INFO L272 TraceCheckUtils]: 6: Hoare triple {21416#(< ~counter~0 95)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {21077#true} is VALID [2022-04-28 05:51:31,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {21416#(< ~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;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,148 INFO L272 TraceCheckUtils]: 4: Hoare triple {21416#(< ~counter~0 95)} call #t~ret9 := main(); {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,149 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21416#(< ~counter~0 95)} {21077#true} #108#return; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,149 INFO L290 TraceCheckUtils]: 2: Hoare triple {21416#(< ~counter~0 95)} assume true; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {21077#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {21416#(< ~counter~0 95)} is VALID [2022-04-28 05:51:31,150 INFO L272 TraceCheckUtils]: 0: Hoare triple {21077#true} call ULTIMATE.init(); {21077#true} is VALID [2022-04-28 05:51:31,150 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 13 proven. 10 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:31,150 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:31,150 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1827384030] [2022-04-28 05:51:31,150 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:31,150 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [967634363] [2022-04-28 05:51:31,150 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [967634363] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:31,150 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:31,150 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:51:31,150 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:31,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1348130544] [2022-04-28 05:51:31,151 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1348130544] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:31,151 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:31,151 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:31,151 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1774263723] [2022-04-28 05:51:31,151 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:31,151 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 05:51:31,152 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:31,152 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:31,189 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:31,190 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:51:31,190 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:31,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:51:31,190 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:31,190 INFO L87 Difference]: Start difference. First operand 377 states and 551 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:32,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:32,423 INFO L93 Difference]: Finished difference Result 604 states and 873 transitions. [2022-04-28 05:51:32,423 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:51:32,423 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 63 [2022-04-28 05:51:32,424 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:32,424 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:32,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 05:51:32,426 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:32,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 158 transitions. [2022-04-28 05:51:32,427 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 158 transitions. [2022-04-28 05:51:32,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 158 edges. 158 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:32,571 INFO L225 Difference]: With dead ends: 604 [2022-04-28 05:51:32,572 INFO L226 Difference]: Without dead ends: 440 [2022-04-28 05:51:32,573 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 128 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=136, Invalid=206, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:51:32,573 INFO L413 NwaCegarLoop]: 55 mSDtfsCounter, 57 mSDsluCounter, 181 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:32,573 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 236 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:32,574 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 440 states. [2022-04-28 05:51:33,515 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 440 to 426. [2022-04-28 05:51:33,515 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:33,516 INFO L82 GeneralOperation]: Start isEquivalent. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:33,516 INFO L74 IsIncluded]: Start isIncluded. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:33,516 INFO L87 Difference]: Start difference. First operand 440 states. Second operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:33,537 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:33,538 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 05:51:33,538 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 05:51:33,539 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:33,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:33,540 INFO L74 IsIncluded]: Start isIncluded. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 05:51:33,540 INFO L87 Difference]: Start difference. First operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) Second operand 440 states. [2022-04-28 05:51:33,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:33,554 INFO L93 Difference]: Finished difference Result 440 states and 611 transitions. [2022-04-28 05:51:33,554 INFO L276 IsEmpty]: Start isEmpty. Operand 440 states and 611 transitions. [2022-04-28 05:51:33,556 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:33,556 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:33,556 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:33,556 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:33,556 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 426 states, 279 states have (on average 1.3118279569892473) internal successors, (366), 290 states have internal predecessors, (366), 117 states have call successors, (117), 30 states have call predecessors, (117), 29 states have return successors, (115), 105 states have call predecessors, (115), 115 states have call successors, (115) [2022-04-28 05:51:33,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 426 states to 426 states and 598 transitions. [2022-04-28 05:51:33,572 INFO L78 Accepts]: Start accepts. Automaton has 426 states and 598 transitions. Word has length 63 [2022-04-28 05:51:33,573 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:33,573 INFO L495 AbstractCegarLoop]: Abstraction has 426 states and 598 transitions. [2022-04-28 05:51:33,573 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 8 states have internal predecessors, (35), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:33,573 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 426 states and 598 transitions. [2022-04-28 05:51:34,426 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 598 edges. 598 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:34,426 INFO L276 IsEmpty]: Start isEmpty. Operand 426 states and 598 transitions. [2022-04-28 05:51:34,427 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 65 [2022-04-28 05:51:34,427 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:34,427 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:34,452 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 05:51:34,627 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 05:51:34,627 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:34,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:34,628 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 3 times [2022-04-28 05:51:34,628 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:34,628 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1039176221] [2022-04-28 05:51:34,628 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:34,628 INFO L85 PathProgramCache]: Analyzing trace with hash 1288112160, now seen corresponding path program 4 times [2022-04-28 05:51:34,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:34,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [244634936] [2022-04-28 05:51:34,629 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:34,629 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:34,653 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:34,653 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1935579136] [2022-04-28 05:51:34,653 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:51:34,653 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:34,653 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:34,661 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 05:51:34,663 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 05:51:34,715 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:51:34,715 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:34,716 INFO L263 TraceCheckSpWp]: Trace formula consists of 215 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:51:34,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:34,731 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:35,034 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 05:51:35,041 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,042 INFO L290 TraceCheckUtils]: 2: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,042 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24424#(<= ~counter~0 0)} {24416#true} #108#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,042 INFO L272 TraceCheckUtils]: 4: Hoare triple {24424#(<= ~counter~0 0)} call #t~ret9 := main(); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,043 INFO L290 TraceCheckUtils]: 5: Hoare triple {24424#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,043 INFO L272 TraceCheckUtils]: 6: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,043 INFO L290 TraceCheckUtils]: 7: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,044 INFO L290 TraceCheckUtils]: 8: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,044 INFO L290 TraceCheckUtils]: 9: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,044 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #94#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,045 INFO L272 TraceCheckUtils]: 11: Hoare triple {24424#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,045 INFO L290 TraceCheckUtils]: 12: Hoare triple {24424#(<= ~counter~0 0)} ~cond := #in~cond; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {24424#(<= ~counter~0 0)} assume !(0 == ~cond); {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,046 INFO L290 TraceCheckUtils]: 14: Hoare triple {24424#(<= ~counter~0 0)} assume true; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,046 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24424#(<= ~counter~0 0)} {24424#(<= ~counter~0 0)} #96#return; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,046 INFO L290 TraceCheckUtils]: 16: Hoare triple {24424#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24424#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:35,047 INFO L290 TraceCheckUtils]: 17: Hoare triple {24424#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:35,047 INFO L290 TraceCheckUtils]: 18: Hoare triple {24473#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:35,048 INFO L290 TraceCheckUtils]: 19: Hoare triple {24473#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24473#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:35,048 INFO L290 TraceCheckUtils]: 20: Hoare triple {24473#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:35,049 INFO L290 TraceCheckUtils]: 21: Hoare triple {24483#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:35,049 INFO L290 TraceCheckUtils]: 22: Hoare triple {24483#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:35,049 INFO L290 TraceCheckUtils]: 23: Hoare triple {24483#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24483#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:35,050 INFO L290 TraceCheckUtils]: 24: Hoare triple {24483#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:35,050 INFO L290 TraceCheckUtils]: 25: Hoare triple {24496#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:35,050 INFO L290 TraceCheckUtils]: 26: Hoare triple {24496#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24496#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:35,051 INFO L290 TraceCheckUtils]: 27: Hoare triple {24496#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:35,051 INFO L290 TraceCheckUtils]: 28: Hoare triple {24506#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:35,051 INFO L290 TraceCheckUtils]: 29: Hoare triple {24506#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24506#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:35,052 INFO L290 TraceCheckUtils]: 30: Hoare triple {24506#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,052 INFO L290 TraceCheckUtils]: 31: Hoare triple {24516#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,053 INFO L272 TraceCheckUtils]: 32: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,053 INFO L290 TraceCheckUtils]: 33: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,053 INFO L290 TraceCheckUtils]: 34: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,053 INFO L290 TraceCheckUtils]: 35: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,054 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #98#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,055 INFO L272 TraceCheckUtils]: 37: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,055 INFO L290 TraceCheckUtils]: 38: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,055 INFO L290 TraceCheckUtils]: 39: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,056 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #100#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,057 INFO L272 TraceCheckUtils]: 42: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,057 INFO L290 TraceCheckUtils]: 43: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,057 INFO L290 TraceCheckUtils]: 44: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,057 INFO L290 TraceCheckUtils]: 45: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,058 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #102#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,058 INFO L272 TraceCheckUtils]: 47: Hoare triple {24516#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,059 INFO L290 TraceCheckUtils]: 48: Hoare triple {24516#(<= ~counter~0 5)} ~cond := #in~cond; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,059 INFO L290 TraceCheckUtils]: 49: Hoare triple {24516#(<= ~counter~0 5)} assume !(0 == ~cond); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,059 INFO L290 TraceCheckUtils]: 50: Hoare triple {24516#(<= ~counter~0 5)} assume true; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,060 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24516#(<= ~counter~0 5)} {24516#(<= ~counter~0 5)} #104#return; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,060 INFO L290 TraceCheckUtils]: 52: Hoare triple {24516#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,060 INFO L290 TraceCheckUtils]: 53: Hoare triple {24516#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24516#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:35,061 INFO L290 TraceCheckUtils]: 54: Hoare triple {24516#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:35,061 INFO L290 TraceCheckUtils]: 55: Hoare triple {24589#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:35,061 INFO L290 TraceCheckUtils]: 56: Hoare triple {24589#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:35,062 INFO L290 TraceCheckUtils]: 57: Hoare triple {24589#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {24589#(<= ~counter~0 6)} is VALID [2022-04-28 05:51:35,062 INFO L290 TraceCheckUtils]: 58: Hoare triple {24589#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24602#(<= |main_#t~post6| 6)} is VALID [2022-04-28 05:51:35,062 INFO L290 TraceCheckUtils]: 59: Hoare triple {24602#(<= |main_#t~post6| 6)} assume !(#t~post6 < 100);havoc #t~post6; {24417#false} is VALID [2022-04-28 05:51:35,062 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {24417#false} is VALID [2022-04-28 05:51:35,062 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 05:51:35,063 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 05:51:35,063 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 05:51:35,063 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:35,063 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:35,430 INFO L290 TraceCheckUtils]: 63: Hoare triple {24417#false} assume !false; {24417#false} is VALID [2022-04-28 05:51:35,431 INFO L290 TraceCheckUtils]: 62: Hoare triple {24417#false} assume 0 == ~cond; {24417#false} is VALID [2022-04-28 05:51:35,431 INFO L290 TraceCheckUtils]: 61: Hoare triple {24417#false} ~cond := #in~cond; {24417#false} is VALID [2022-04-28 05:51:35,431 INFO L272 TraceCheckUtils]: 60: Hoare triple {24417#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {24417#false} is VALID [2022-04-28 05:51:35,431 INFO L290 TraceCheckUtils]: 59: Hoare triple {24630#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {24417#false} is VALID [2022-04-28 05:51:35,431 INFO L290 TraceCheckUtils]: 58: Hoare triple {24634#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24630#(< |main_#t~post6| 100)} is VALID [2022-04-28 05:51:35,432 INFO L290 TraceCheckUtils]: 57: Hoare triple {24634#(< ~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; {24634#(< ~counter~0 100)} is VALID [2022-04-28 05:51:35,432 INFO L290 TraceCheckUtils]: 56: Hoare triple {24634#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {24634#(< ~counter~0 100)} is VALID [2022-04-28 05:51:35,432 INFO L290 TraceCheckUtils]: 55: Hoare triple {24634#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {24634#(< ~counter~0 100)} is VALID [2022-04-28 05:51:35,433 INFO L290 TraceCheckUtils]: 54: Hoare triple {24647#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24634#(< ~counter~0 100)} is VALID [2022-04-28 05:51:35,433 INFO L290 TraceCheckUtils]: 53: Hoare triple {24647#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,434 INFO L290 TraceCheckUtils]: 52: Hoare triple {24647#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,434 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {24416#true} {24647#(< ~counter~0 99)} #104#return; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,434 INFO L290 TraceCheckUtils]: 50: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:35,434 INFO L290 TraceCheckUtils]: 49: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:35,434 INFO L290 TraceCheckUtils]: 48: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:35,434 INFO L272 TraceCheckUtils]: 47: Hoare triple {24647#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:35,435 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {24416#true} {24647#(< ~counter~0 99)} #102#return; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,435 INFO L290 TraceCheckUtils]: 45: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:35,435 INFO L290 TraceCheckUtils]: 44: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:35,435 INFO L290 TraceCheckUtils]: 43: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:35,435 INFO L272 TraceCheckUtils]: 42: Hoare triple {24647#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:35,436 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {24416#true} {24647#(< ~counter~0 99)} #100#return; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,436 INFO L290 TraceCheckUtils]: 40: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:35,436 INFO L290 TraceCheckUtils]: 39: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:35,436 INFO L290 TraceCheckUtils]: 38: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:35,436 INFO L272 TraceCheckUtils]: 37: Hoare triple {24647#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:35,437 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {24416#true} {24647#(< ~counter~0 99)} #98#return; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,437 INFO L290 TraceCheckUtils]: 35: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:35,437 INFO L290 TraceCheckUtils]: 34: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:35,437 INFO L290 TraceCheckUtils]: 33: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:35,437 INFO L272 TraceCheckUtils]: 32: Hoare triple {24647#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:35,437 INFO L290 TraceCheckUtils]: 31: Hoare triple {24647#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,438 INFO L290 TraceCheckUtils]: 30: Hoare triple {24720#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {24647#(< ~counter~0 99)} is VALID [2022-04-28 05:51:35,438 INFO L290 TraceCheckUtils]: 29: Hoare triple {24720#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {24720#(< ~counter~0 98)} is VALID [2022-04-28 05:51:35,438 INFO L290 TraceCheckUtils]: 28: Hoare triple {24720#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {24720#(< ~counter~0 98)} is VALID [2022-04-28 05:51:35,439 INFO L290 TraceCheckUtils]: 27: Hoare triple {24730#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24720#(< ~counter~0 98)} is VALID [2022-04-28 05:51:35,439 INFO L290 TraceCheckUtils]: 26: Hoare triple {24730#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24730#(< ~counter~0 97)} is VALID [2022-04-28 05:51:35,439 INFO L290 TraceCheckUtils]: 25: Hoare triple {24730#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {24730#(< ~counter~0 97)} is VALID [2022-04-28 05:51:35,440 INFO L290 TraceCheckUtils]: 24: Hoare triple {24740#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24730#(< ~counter~0 97)} is VALID [2022-04-28 05:51:35,440 INFO L290 TraceCheckUtils]: 23: Hoare triple {24740#(< ~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; {24740#(< ~counter~0 96)} is VALID [2022-04-28 05:51:35,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {24740#(< ~counter~0 96)} assume !(~c~0 >= ~b~0); {24740#(< ~counter~0 96)} is VALID [2022-04-28 05:51:35,441 INFO L290 TraceCheckUtils]: 21: Hoare triple {24740#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {24740#(< ~counter~0 96)} is VALID [2022-04-28 05:51:35,441 INFO L290 TraceCheckUtils]: 20: Hoare triple {24753#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {24740#(< ~counter~0 96)} is VALID [2022-04-28 05:51:35,441 INFO L290 TraceCheckUtils]: 19: Hoare triple {24753#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {24753#(< ~counter~0 95)} is VALID [2022-04-28 05:51:35,442 INFO L290 TraceCheckUtils]: 18: Hoare triple {24753#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {24753#(< ~counter~0 95)} is VALID [2022-04-28 05:51:35,442 INFO L290 TraceCheckUtils]: 17: Hoare triple {24763#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {24753#(< ~counter~0 95)} is VALID [2022-04-28 05:51:35,442 INFO L290 TraceCheckUtils]: 16: Hoare triple {24763#(< ~counter~0 94)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,443 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {24416#true} {24763#(< ~counter~0 94)} #96#return; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,443 INFO L290 TraceCheckUtils]: 14: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:35,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:35,443 INFO L290 TraceCheckUtils]: 12: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:35,443 INFO L272 TraceCheckUtils]: 11: Hoare triple {24763#(< ~counter~0 94)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:35,444 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24416#true} {24763#(< ~counter~0 94)} #94#return; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,444 INFO L290 TraceCheckUtils]: 9: Hoare triple {24416#true} assume true; {24416#true} is VALID [2022-04-28 05:51:35,444 INFO L290 TraceCheckUtils]: 8: Hoare triple {24416#true} assume !(0 == ~cond); {24416#true} is VALID [2022-04-28 05:51:35,444 INFO L290 TraceCheckUtils]: 7: Hoare triple {24416#true} ~cond := #in~cond; {24416#true} is VALID [2022-04-28 05:51:35,444 INFO L272 TraceCheckUtils]: 6: Hoare triple {24763#(< ~counter~0 94)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {24416#true} is VALID [2022-04-28 05:51:35,444 INFO L290 TraceCheckUtils]: 5: Hoare triple {24763#(< ~counter~0 94)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,445 INFO L272 TraceCheckUtils]: 4: Hoare triple {24763#(< ~counter~0 94)} call #t~ret9 := main(); {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,445 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24763#(< ~counter~0 94)} {24416#true} #108#return; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,445 INFO L290 TraceCheckUtils]: 2: Hoare triple {24763#(< ~counter~0 94)} assume true; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,446 INFO L290 TraceCheckUtils]: 1: Hoare triple {24416#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {24763#(< ~counter~0 94)} is VALID [2022-04-28 05:51:35,446 INFO L272 TraceCheckUtils]: 0: Hoare triple {24416#true} call ULTIMATE.init(); {24416#true} is VALID [2022-04-28 05:51:35,446 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 8 proven. 17 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:35,446 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:35,446 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [244634936] [2022-04-28 05:51:35,446 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:35,446 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1935579136] [2022-04-28 05:51:35,446 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1935579136] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:35,446 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:35,447 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 05:51:35,447 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:35,447 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1039176221] [2022-04-28 05:51:35,447 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1039176221] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:35,447 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:35,447 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:51:35,447 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [956847043] [2022-04-28 05:51:35,447 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:35,448 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 05:51:35,448 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:35,448 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:35,501 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 05:51:35,501 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:51:35,502 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:35,502 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:51:35,502 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:51:35,502 INFO L87 Difference]: Start difference. First operand 426 states and 598 transitions. Second operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:37,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:37,134 INFO L93 Difference]: Finished difference Result 531 states and 722 transitions. [2022-04-28 05:51:37,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:51:37,134 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 64 [2022-04-28 05:51:37,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:37,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:37,136 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 05:51:37,136 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:37,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 162 transitions. [2022-04-28 05:51:37,138 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 162 transitions. [2022-04-28 05:51:37,282 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:37,302 INFO L225 Difference]: With dead ends: 531 [2022-04-28 05:51:37,302 INFO L226 Difference]: Without dead ends: 524 [2022-04-28 05:51:37,303 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 131 GetRequests, 111 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=188, Invalid=274, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:51:37,303 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 84 mSDsluCounter, 264 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 325 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:37,304 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 325 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:51:37,304 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 524 states. [2022-04-28 05:51:38,517 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 524 to 503. [2022-04-28 05:51:38,517 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:38,518 INFO L82 GeneralOperation]: Start isEquivalent. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:38,519 INFO L74 IsIncluded]: Start isIncluded. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:38,519 INFO L87 Difference]: Start difference. First operand 524 states. Second operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:38,536 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:38,536 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 05:51:38,537 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 05:51:38,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:38,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:38,539 INFO L74 IsIncluded]: Start isIncluded. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 05:51:38,540 INFO L87 Difference]: Start difference. First operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 524 states. [2022-04-28 05:51:38,557 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:38,557 INFO L93 Difference]: Finished difference Result 524 states and 713 transitions. [2022-04-28 05:51:38,557 INFO L276 IsEmpty]: Start isEmpty. Operand 524 states and 713 transitions. [2022-04-28 05:51:38,558 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:38,559 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:38,559 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:38,559 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:38,560 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 503 states, 330 states have (on average 1.290909090909091) internal successors, (426), 346 states have internal predecessors, (426), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:38,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 503 states to 503 states and 691 transitions. [2022-04-28 05:51:38,580 INFO L78 Accepts]: Start accepts. Automaton has 503 states and 691 transitions. Word has length 64 [2022-04-28 05:51:38,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:38,580 INFO L495 AbstractCegarLoop]: Abstraction has 503 states and 691 transitions. [2022-04-28 05:51:38,581 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 3.6) internal successors, (36), 9 states have internal predecessors, (36), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:38,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 503 states and 691 transitions. [2022-04-28 05:51:39,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 691 edges. 691 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:39,569 INFO L276 IsEmpty]: Start isEmpty. Operand 503 states and 691 transitions. [2022-04-28 05:51:39,571 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2022-04-28 05:51:39,571 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:39,572 INFO L195 NwaCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:39,597 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 05:51:39,791 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 05:51:39,791 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:39,792 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:39,792 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 1 times [2022-04-28 05:51:39,792 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:39,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1289271273] [2022-04-28 05:51:39,792 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:39,792 INFO L85 PathProgramCache]: Analyzing trace with hash 1156119236, now seen corresponding path program 2 times [2022-04-28 05:51:39,792 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:39,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1245428377] [2022-04-28 05:51:39,792 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:39,792 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:39,802 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:39,802 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1685308324] [2022-04-28 05:51:39,802 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:39,803 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:39,803 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:39,803 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 05:51:39,807 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 05:51:39,851 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:39,851 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:39,852 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-28 05:51:39,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:39,863 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:40,231 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 05:51:40,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27941#true} is VALID [2022-04-28 05:51:40,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,231 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 05:51:40,231 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 05:51:40,232 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,233 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 05:51:40,233 INFO L290 TraceCheckUtils]: 13: Hoare triple {27982#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:40,234 INFO L290 TraceCheckUtils]: 14: Hoare triple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {27986#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 05:51:40,234 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27986#(not (= |assume_abort_if_not_#in~cond| 0))} {27941#true} #96#return; {27993#(<= 1 main_~y~0)} is VALID [2022-04-28 05:51:40,234 INFO L290 TraceCheckUtils]: 16: Hoare triple {27993#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:40,235 INFO L290 TraceCheckUtils]: 17: Hoare triple {27997#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:40,235 INFO L290 TraceCheckUtils]: 18: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:40,235 INFO L290 TraceCheckUtils]: 19: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:40,236 INFO L290 TraceCheckUtils]: 20: Hoare triple {27997#(<= 1 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:40,236 INFO L290 TraceCheckUtils]: 21: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(#t~post7 < 100);havoc #t~post7; {27997#(<= 1 main_~b~0)} is VALID [2022-04-28 05:51:40,236 INFO L290 TraceCheckUtils]: 22: Hoare triple {27997#(<= 1 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,237 INFO L290 TraceCheckUtils]: 23: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,237 INFO L290 TraceCheckUtils]: 24: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,237 INFO L272 TraceCheckUtils]: 25: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,237 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,237 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,237 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,238 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #98#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,238 INFO L272 TraceCheckUtils]: 30: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,238 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,238 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,238 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,239 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #100#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,239 INFO L272 TraceCheckUtils]: 35: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,239 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,239 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,239 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,240 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #102#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,240 INFO L272 TraceCheckUtils]: 40: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,240 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,240 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,240 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,240 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} #104#return; {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,241 INFO L290 TraceCheckUtils]: 45: Hoare triple {28016#(and (= main_~b~0 main_~v~0) (= main_~d~0 1) (<= 1 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,241 INFO L290 TraceCheckUtils]: 46: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,242 INFO L290 TraceCheckUtils]: 47: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,242 INFO L272 TraceCheckUtils]: 48: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,242 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,242 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,242 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,243 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #98#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,243 INFO L272 TraceCheckUtils]: 53: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,243 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,243 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,243 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,247 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #100#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,248 INFO L272 TraceCheckUtils]: 58: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,248 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,248 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,248 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,249 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} #102#return; {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} is VALID [2022-04-28 05:51:40,249 INFO L272 TraceCheckUtils]: 63: Hoare triple {28086#(and (= main_~v~0 (* main_~b~0 2)) (= main_~d~0 2) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:40,250 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:40,250 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 05:51:40,250 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 05:51:40,251 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 17 proven. 6 refuted. 0 times theorem prover too weak. 85 trivial. 0 not checked. [2022-04-28 05:51:40,251 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:40,490 INFO L290 TraceCheckUtils]: 66: Hoare triple {27942#false} assume !false; {27942#false} is VALID [2022-04-28 05:51:40,491 INFO L290 TraceCheckUtils]: 65: Hoare triple {28145#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {27942#false} is VALID [2022-04-28 05:51:40,491 INFO L290 TraceCheckUtils]: 64: Hoare triple {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {28145#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:51:40,492 INFO L272 TraceCheckUtils]: 63: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {28141#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:51:40,492 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,492 INFO L290 TraceCheckUtils]: 61: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,492 INFO L290 TraceCheckUtils]: 60: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,493 INFO L290 TraceCheckUtils]: 59: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,493 INFO L272 TraceCheckUtils]: 58: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,493 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,493 INFO L290 TraceCheckUtils]: 56: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,493 INFO L290 TraceCheckUtils]: 55: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,493 INFO L290 TraceCheckUtils]: 54: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,493 INFO L272 TraceCheckUtils]: 53: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,494 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,494 INFO L290 TraceCheckUtils]: 51: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,494 INFO L290 TraceCheckUtils]: 50: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,494 INFO L290 TraceCheckUtils]: 49: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,494 INFO L272 TraceCheckUtils]: 48: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,495 INFO L290 TraceCheckUtils]: 47: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,495 INFO L290 TraceCheckUtils]: 46: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,497 INFO L290 TraceCheckUtils]: 45: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,497 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #104#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,498 INFO L290 TraceCheckUtils]: 43: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,498 INFO L290 TraceCheckUtils]: 42: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,498 INFO L290 TraceCheckUtils]: 41: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,498 INFO L272 TraceCheckUtils]: 40: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,498 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #102#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,498 INFO L290 TraceCheckUtils]: 38: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,498 INFO L290 TraceCheckUtils]: 37: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,499 INFO L290 TraceCheckUtils]: 36: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,499 INFO L272 TraceCheckUtils]: 35: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,499 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #100#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,499 INFO L290 TraceCheckUtils]: 33: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,499 INFO L290 TraceCheckUtils]: 32: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,499 INFO L290 TraceCheckUtils]: 31: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,500 INFO L272 TraceCheckUtils]: 30: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,511 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {27941#true} {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #98#return; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,511 INFO L290 TraceCheckUtils]: 28: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,511 INFO L290 TraceCheckUtils]: 27: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,511 INFO L290 TraceCheckUtils]: 26: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,511 INFO L272 TraceCheckUtils]: 25: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} assume !!(#t~post8 < 100);havoc #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,512 INFO L290 TraceCheckUtils]: 23: Hoare triple {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 22: Hoare triple {27941#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {28161#(= main_~v~0 (* main_~d~0 main_~b~0))} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 21: Hoare triple {27941#true} assume !!(#t~post7 < 100);havoc #t~post7; {27941#true} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 20: Hoare triple {27941#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {27941#true} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 19: Hoare triple {27941#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {27941#true} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 18: Hoare triple {27941#true} assume !!(#t~post6 < 100);havoc #t~post6; {27941#true} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 17: Hoare triple {27941#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {27941#true} is VALID [2022-04-28 05:51:40,513 INFO L290 TraceCheckUtils]: 16: Hoare triple {27941#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {27941#true} is VALID [2022-04-28 05:51:40,513 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {27941#true} {27941#true} #96#return; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 13: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 12: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L272 TraceCheckUtils]: 11: Hoare triple {27941#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {27941#true} {27941#true} #94#return; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 9: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 8: Hoare triple {27941#true} assume !(0 == ~cond); {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 7: Hoare triple {27941#true} ~cond := #in~cond; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L272 TraceCheckUtils]: 6: Hoare triple {27941#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L290 TraceCheckUtils]: 5: Hoare triple {27941#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {27941#true} is VALID [2022-04-28 05:51:40,514 INFO L272 TraceCheckUtils]: 4: Hoare triple {27941#true} call #t~ret9 := main(); {27941#true} is VALID [2022-04-28 05:51:40,515 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {27941#true} {27941#true} #108#return; {27941#true} is VALID [2022-04-28 05:51:40,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {27941#true} assume true; {27941#true} is VALID [2022-04-28 05:51:40,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {27941#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {27941#true} is VALID [2022-04-28 05:51:40,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {27941#true} call ULTIMATE.init(); {27941#true} is VALID [2022-04-28 05:51:40,515 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 94 trivial. 0 not checked. [2022-04-28 05:51:40,516 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:40,516 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1245428377] [2022-04-28 05:51:40,516 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:40,516 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1685308324] [2022-04-28 05:51:40,516 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1685308324] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 05:51:40,516 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:51:40,516 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-28 05:51:40,516 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:40,517 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1289271273] [2022-04-28 05:51:40,517 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1289271273] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:40,517 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:40,517 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:40,517 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [549691501] [2022-04-28 05:51:40,517 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:40,518 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-04-28 05:51:40,518 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:40,518 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:40,549 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:40,549 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:40,549 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:40,549 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:40,550 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=87, Unknown=0, NotChecked=0, Total=110 [2022-04-28 05:51:40,550 INFO L87 Difference]: Start difference. First operand 503 states and 691 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:41,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:41,762 INFO L93 Difference]: Finished difference Result 517 states and 704 transitions. [2022-04-28 05:51:41,762 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 05:51:41,763 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 67 [2022-04-28 05:51:41,763 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:41,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:41,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 05:51:41,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:41,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 56 transitions. [2022-04-28 05:51:41,764 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 56 transitions. [2022-04-28 05:51:41,804 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 05:51:41,822 INFO L225 Difference]: With dead ends: 517 [2022-04-28 05:51:41,822 INFO L226 Difference]: Without dead ends: 515 [2022-04-28 05:51:41,823 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 122 SyntacticMatches, 2 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:51:41,823 INFO L413 NwaCegarLoop]: 44 mSDtfsCounter, 12 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:41,823 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [12 Valid, 144 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 05:51:41,824 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 515 states. [2022-04-28 05:51:42,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 515 to 511. [2022-04-28 05:51:42,873 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:42,874 INFO L82 GeneralOperation]: Start isEquivalent. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:42,875 INFO L74 IsIncluded]: Start isIncluded. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:42,875 INFO L87 Difference]: Start difference. First operand 515 states. Second operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:42,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:42,892 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 05:51:42,892 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 05:51:42,894 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:42,894 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:42,895 INFO L74 IsIncluded]: Start isIncluded. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 05:51:42,895 INFO L87 Difference]: Start difference. First operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) Second operand 515 states. [2022-04-28 05:51:42,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:42,911 INFO L93 Difference]: Finished difference Result 515 states and 699 transitions. [2022-04-28 05:51:42,911 INFO L276 IsEmpty]: Start isEmpty. Operand 515 states and 699 transitions. [2022-04-28 05:51:42,913 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:42,913 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:42,913 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:42,913 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:42,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 511 states, 336 states have (on average 1.2797619047619047) internal successors, (430), 352 states have internal predecessors, (430), 134 states have call successors, (134), 41 states have call predecessors, (134), 40 states have return successors, (131), 117 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:51:42,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 511 states to 511 states and 695 transitions. [2022-04-28 05:51:42,933 INFO L78 Accepts]: Start accepts. Automaton has 511 states and 695 transitions. Word has length 67 [2022-04-28 05:51:42,934 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:42,934 INFO L495 AbstractCegarLoop]: Abstraction has 511 states and 695 transitions. [2022-04-28 05:51:42,934 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 2 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:42,934 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 511 states and 695 transitions. [2022-04-28 05:51:44,062 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 695 edges. 695 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,063 INFO L276 IsEmpty]: Start isEmpty. Operand 511 states and 695 transitions. [2022-04-28 05:51:44,064 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:51:44,064 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:44,064 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:44,090 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 05:51:44,264 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 05:51:44,264 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:44,265 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:44,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 3 times [2022-04-28 05:51:44,265 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:44,265 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [221859755] [2022-04-28 05:51:44,265 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:44,265 INFO L85 PathProgramCache]: Analyzing trace with hash 1261753774, now seen corresponding path program 4 times [2022-04-28 05:51:44,266 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:44,266 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [687034556] [2022-04-28 05:51:44,266 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:44,266 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:44,281 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:44,281 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [632143743] [2022-04-28 05:51:44,281 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:51:44,281 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:44,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:44,282 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 05:51:44,283 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 05:51:44,333 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:51:44,333 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:44,334 INFO L263 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 05:51:44,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:44,348 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:44,631 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 05:51:44,631 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {31441#true} is VALID [2022-04-28 05:51:44,631 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,631 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 05:51:44,631 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,632 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 100);havoc #t~post6; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 05:51:44,633 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 100);havoc #t~post7; {31441#true} is VALID [2022-04-28 05:51:44,634 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:51:44,634 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:44,634 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:44,635 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:44,635 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:44,636 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:44,636 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:44,636 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,637 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,637 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 100);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,637 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,637 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,637 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,638 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,638 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,638 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,638 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,639 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,639 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,639 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,640 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,640 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,640 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,640 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,640 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,641 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,641 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,641 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,641 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,641 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,642 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,643 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,643 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,643 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,644 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,644 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:44,644 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:44,645 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:44,645 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 05:51:44,645 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {31442#false} is VALID [2022-04-28 05:51:44,645 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 05:51:44,646 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 05:51:44,646 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 05:51:44,646 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:44,646 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:44,876 INFO L290 TraceCheckUtils]: 64: Hoare triple {31442#false} assume !false; {31442#false} is VALID [2022-04-28 05:51:44,876 INFO L290 TraceCheckUtils]: 63: Hoare triple {31442#false} assume 0 == ~cond; {31442#false} is VALID [2022-04-28 05:51:44,876 INFO L290 TraceCheckUtils]: 62: Hoare triple {31442#false} ~cond := #in~cond; {31442#false} is VALID [2022-04-28 05:51:44,876 INFO L272 TraceCheckUtils]: 61: Hoare triple {31442#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {31442#false} is VALID [2022-04-28 05:51:44,877 INFO L290 TraceCheckUtils]: 60: Hoare triple {31622#(< 0 main_~b~0)} assume !(0 != ~b~0); {31442#false} is VALID [2022-04-28 05:51:44,877 INFO L290 TraceCheckUtils]: 59: Hoare triple {31622#(< 0 main_~b~0)} assume !!(#t~post6 < 100);havoc #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:44,877 INFO L290 TraceCheckUtils]: 58: Hoare triple {31622#(< 0 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:44,878 INFO L290 TraceCheckUtils]: 57: Hoare triple {31609#(< 0 main_~c~0)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31622#(< 0 main_~b~0)} is VALID [2022-04-28 05:51:44,878 INFO L290 TraceCheckUtils]: 56: Hoare triple {31609#(< 0 main_~c~0)} assume !(~c~0 >= ~b~0); {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,878 INFO L290 TraceCheckUtils]: 55: Hoare triple {31609#(< 0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,879 INFO L290 TraceCheckUtils]: 54: Hoare triple {31609#(< 0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,879 INFO L290 TraceCheckUtils]: 53: Hoare triple {31536#(< main_~v~0 main_~c~0)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {31609#(< 0 main_~c~0)} is VALID [2022-04-28 05:51:44,879 INFO L290 TraceCheckUtils]: 52: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !(~c~0 >= 2 * ~v~0); {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,880 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #104#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,880 INFO L290 TraceCheckUtils]: 50: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,880 INFO L290 TraceCheckUtils]: 49: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,880 INFO L290 TraceCheckUtils]: 48: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,880 INFO L272 TraceCheckUtils]: 47: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,881 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #102#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,881 INFO L290 TraceCheckUtils]: 45: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,881 INFO L290 TraceCheckUtils]: 44: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,881 INFO L290 TraceCheckUtils]: 43: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,881 INFO L272 TraceCheckUtils]: 42: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,882 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #100#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,882 INFO L290 TraceCheckUtils]: 40: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,882 INFO L290 TraceCheckUtils]: 39: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,882 INFO L290 TraceCheckUtils]: 38: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,882 INFO L272 TraceCheckUtils]: 37: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,883 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {31441#true} {31536#(< main_~v~0 main_~c~0)} #98#return; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,884 INFO L290 TraceCheckUtils]: 35: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,884 INFO L290 TraceCheckUtils]: 34: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,884 INFO L290 TraceCheckUtils]: 33: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,884 INFO L272 TraceCheckUtils]: 32: Hoare triple {31536#(< main_~v~0 main_~c~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,884 INFO L290 TraceCheckUtils]: 31: Hoare triple {31536#(< main_~v~0 main_~c~0)} assume !!(#t~post8 < 100);havoc #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,884 INFO L290 TraceCheckUtils]: 30: Hoare triple {31536#(< main_~v~0 main_~c~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,885 INFO L290 TraceCheckUtils]: 29: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {31536#(< main_~v~0 main_~c~0)} is VALID [2022-04-28 05:51:44,885 INFO L290 TraceCheckUtils]: 28: Hoare triple {31526#(< main_~b~0 main_~c~0)} assume !!(#t~post7 < 100);havoc #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:44,885 INFO L290 TraceCheckUtils]: 27: Hoare triple {31526#(< main_~b~0 main_~c~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:44,886 INFO L290 TraceCheckUtils]: 26: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31526#(< main_~b~0 main_~c~0)} is VALID [2022-04-28 05:51:44,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {31516#(< main_~b~0 main_~a~0)} assume !!(#t~post6 < 100);havoc #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:44,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {31516#(< main_~b~0 main_~a~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 23: Hoare triple {31512#(not (<= main_~b~0 main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {31516#(< main_~b~0 main_~a~0)} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 22: Hoare triple {31441#true} assume !(~c~0 >= ~b~0); {31512#(not (<= main_~b~0 main_~c~0))} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {31441#true} assume !!(#t~post7 < 100);havoc #t~post7; {31441#true} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {31441#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {31441#true} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 19: Hoare triple {31441#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {31441#true} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 18: Hoare triple {31441#true} assume !!(#t~post6 < 100);havoc #t~post6; {31441#true} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 17: Hoare triple {31441#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {31441#true} is VALID [2022-04-28 05:51:44,887 INFO L290 TraceCheckUtils]: 16: Hoare triple {31441#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {31441#true} is VALID [2022-04-28 05:51:44,887 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {31441#true} {31441#true} #96#return; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 14: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 13: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L272 TraceCheckUtils]: 11: Hoare triple {31441#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {31441#true} {31441#true} #94#return; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 9: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 8: Hoare triple {31441#true} assume !(0 == ~cond); {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 7: Hoare triple {31441#true} ~cond := #in~cond; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L272 TraceCheckUtils]: 6: Hoare triple {31441#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 5: Hoare triple {31441#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L272 TraceCheckUtils]: 4: Hoare triple {31441#true} call #t~ret9 := main(); {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31441#true} {31441#true} #108#return; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 2: Hoare triple {31441#true} assume true; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L290 TraceCheckUtils]: 1: Hoare triple {31441#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {31441#true} is VALID [2022-04-28 05:51:44,888 INFO L272 TraceCheckUtils]: 0: Hoare triple {31441#true} call ULTIMATE.init(); {31441#true} is VALID [2022-04-28 05:51:44,889 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 20 proven. 7 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:44,889 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:44,889 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [687034556] [2022-04-28 05:51:44,889 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:44,889 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [632143743] [2022-04-28 05:51:44,889 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [632143743] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:44,889 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:44,889 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 05:51:44,889 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:44,889 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [221859755] [2022-04-28 05:51:44,890 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [221859755] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:44,890 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:44,890 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:51:44,890 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2135962382] [2022-04-28 05:51:44,890 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:44,890 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 05:51:44,890 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:44,890 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:44,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:44,930 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:51:44,930 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:44,930 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:51:44,930 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-28 05:51:44,930 INFO L87 Difference]: Start difference. First operand 511 states and 695 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:48,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:48,487 INFO L93 Difference]: Finished difference Result 857 states and 1271 transitions. [2022-04-28 05:51:48,487 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:51:48,487 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 65 [2022-04-28 05:51:48,487 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:48,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:48,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 05:51:48,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:48,492 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 227 transitions. [2022-04-28 05:51:48,492 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 227 transitions. [2022-04-28 05:51:48,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 227 edges. 227 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:48,761 INFO L225 Difference]: With dead ends: 857 [2022-04-28 05:51:48,761 INFO L226 Difference]: Without dead ends: 850 [2022-04-28 05:51:48,762 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 148 GetRequests, 127 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 65 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=107, Invalid=313, Unknown=0, NotChecked=0, Total=420 [2022-04-28 05:51:48,762 INFO L413 NwaCegarLoop]: 120 mSDtfsCounter, 81 mSDsluCounter, 334 mSDsCounter, 0 mSdLazyCounter, 401 mSolverCounterSat, 91 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 454 SdHoareTripleChecker+Invalid, 492 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 91 IncrementalHoareTripleChecker+Valid, 401 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:48,762 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 454 Invalid, 492 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [91 Valid, 401 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 05:51:48,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 850 states. [2022-04-28 05:51:50,077 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 850 to 567. [2022-04-28 05:51:50,077 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:50,079 INFO L82 GeneralOperation]: Start isEquivalent. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:50,080 INFO L74 IsIncluded]: Start isIncluded. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:50,081 INFO L87 Difference]: Start difference. First operand 850 states. Second operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:50,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:50,129 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 05:51:50,129 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 05:51:50,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:50,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:50,133 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 05:51:50,133 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 850 states. [2022-04-28 05:51:50,182 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:50,182 INFO L93 Difference]: Finished difference Result 850 states and 1261 transitions. [2022-04-28 05:51:50,182 INFO L276 IsEmpty]: Start isEmpty. Operand 850 states and 1261 transitions. [2022-04-28 05:51:50,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:50,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:50,185 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:50,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:50,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.3) internal successors, (494), 395 states have internal predecessors, (494), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:50,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 783 transitions. [2022-04-28 05:51:50,210 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 783 transitions. Word has length 65 [2022-04-28 05:51:50,211 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:50,211 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 783 transitions. [2022-04-28 05:51:50,211 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 8 states have internal predecessors, (37), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:50,211 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 783 transitions. [2022-04-28 05:51:51,576 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 783 edges. 783 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:51,577 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 783 transitions. [2022-04-28 05:51:51,577 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-28 05:51:51,577 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:51,577 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:51,593 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-28 05:51:51,778 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 05:51:51,778 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:51,778 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:51,778 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 1 times [2022-04-28 05:51:51,778 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:51,778 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [314774] [2022-04-28 05:51:51,779 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:51,779 INFO L85 PathProgramCache]: Analyzing trace with hash 365174246, now seen corresponding path program 2 times [2022-04-28 05:51:51,779 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:51,779 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [648577321] [2022-04-28 05:51:51,779 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:51,779 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:51,790 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:51,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [700770320] [2022-04-28 05:51:51,790 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:51,790 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:51,791 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:51,792 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 05:51:51,804 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 05:51:51,857 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:51,857 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:51,858 INFO L263 TraceCheckSpWp]: Trace formula consists of 223 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-28 05:51:51,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:51,873 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:52,173 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 05:51:52,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,175 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36426#(<= ~counter~0 0)} {36418#true} #108#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,175 INFO L272 TraceCheckUtils]: 4: Hoare triple {36426#(<= ~counter~0 0)} call #t~ret9 := main(); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,175 INFO L290 TraceCheckUtils]: 5: Hoare triple {36426#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,176 INFO L272 TraceCheckUtils]: 6: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,176 INFO L290 TraceCheckUtils]: 7: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,176 INFO L290 TraceCheckUtils]: 8: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,177 INFO L290 TraceCheckUtils]: 9: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,177 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #94#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,177 INFO L272 TraceCheckUtils]: 11: Hoare triple {36426#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,178 INFO L290 TraceCheckUtils]: 12: Hoare triple {36426#(<= ~counter~0 0)} ~cond := #in~cond; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,178 INFO L290 TraceCheckUtils]: 13: Hoare triple {36426#(<= ~counter~0 0)} assume !(0 == ~cond); {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {36426#(<= ~counter~0 0)} assume true; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,179 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36426#(<= ~counter~0 0)} {36426#(<= ~counter~0 0)} #96#return; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,179 INFO L290 TraceCheckUtils]: 16: Hoare triple {36426#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36426#(<= ~counter~0 0)} is VALID [2022-04-28 05:51:52,180 INFO L290 TraceCheckUtils]: 17: Hoare triple {36426#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:52,180 INFO L290 TraceCheckUtils]: 18: Hoare triple {36475#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:52,180 INFO L290 TraceCheckUtils]: 19: Hoare triple {36475#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36475#(<= ~counter~0 1)} is VALID [2022-04-28 05:51:52,181 INFO L290 TraceCheckUtils]: 20: Hoare triple {36475#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:52,181 INFO L290 TraceCheckUtils]: 21: Hoare triple {36485#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:52,182 INFO L290 TraceCheckUtils]: 22: Hoare triple {36485#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:52,182 INFO L290 TraceCheckUtils]: 23: Hoare triple {36485#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36485#(<= ~counter~0 2)} is VALID [2022-04-28 05:51:52,182 INFO L290 TraceCheckUtils]: 24: Hoare triple {36485#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:52,183 INFO L290 TraceCheckUtils]: 25: Hoare triple {36498#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:52,183 INFO L290 TraceCheckUtils]: 26: Hoare triple {36498#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36498#(<= ~counter~0 3)} is VALID [2022-04-28 05:51:52,184 INFO L290 TraceCheckUtils]: 27: Hoare triple {36498#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:52,184 INFO L290 TraceCheckUtils]: 28: Hoare triple {36508#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:52,184 INFO L290 TraceCheckUtils]: 29: Hoare triple {36508#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36508#(<= ~counter~0 4)} is VALID [2022-04-28 05:51:52,185 INFO L290 TraceCheckUtils]: 30: Hoare triple {36508#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,185 INFO L290 TraceCheckUtils]: 31: Hoare triple {36518#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,186 INFO L272 TraceCheckUtils]: 32: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,186 INFO L290 TraceCheckUtils]: 33: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,186 INFO L290 TraceCheckUtils]: 34: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,186 INFO L290 TraceCheckUtils]: 35: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,187 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #98#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,188 INFO L272 TraceCheckUtils]: 37: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,188 INFO L290 TraceCheckUtils]: 38: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,188 INFO L290 TraceCheckUtils]: 39: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,188 INFO L290 TraceCheckUtils]: 40: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,189 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #100#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,189 INFO L272 TraceCheckUtils]: 42: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,190 INFO L290 TraceCheckUtils]: 43: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,190 INFO L290 TraceCheckUtils]: 44: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,190 INFO L290 TraceCheckUtils]: 45: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,191 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #102#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,191 INFO L272 TraceCheckUtils]: 47: Hoare triple {36518#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,192 INFO L290 TraceCheckUtils]: 48: Hoare triple {36518#(<= ~counter~0 5)} ~cond := #in~cond; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,192 INFO L290 TraceCheckUtils]: 49: Hoare triple {36518#(<= ~counter~0 5)} assume !(0 == ~cond); {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,192 INFO L290 TraceCheckUtils]: 50: Hoare triple {36518#(<= ~counter~0 5)} assume true; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,193 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36518#(<= ~counter~0 5)} {36518#(<= ~counter~0 5)} #104#return; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,193 INFO L290 TraceCheckUtils]: 52: Hoare triple {36518#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36518#(<= ~counter~0 5)} is VALID [2022-04-28 05:51:52,193 INFO L290 TraceCheckUtils]: 53: Hoare triple {36518#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36588#(<= |main_#t~post8| 5)} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 54: Hoare triple {36588#(<= |main_#t~post8| 5)} assume !(#t~post8 < 100);havoc #t~post8; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 100);havoc #t~post7; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 100);havoc #t~post6; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 05:51:52,194 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:52,195 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 64: Hoare triple {36419#false} assume !false; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 63: Hoare triple {36419#false} assume 0 == ~cond; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 62: Hoare triple {36419#false} ~cond := #in~cond; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L272 TraceCheckUtils]: 61: Hoare triple {36419#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 60: Hoare triple {36419#false} assume !(#t~post6 < 100);havoc #t~post6; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 59: Hoare triple {36419#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 58: Hoare triple {36419#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 57: Hoare triple {36419#false} assume !(#t~post7 < 100);havoc #t~post7; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 56: Hoare triple {36419#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36419#false} is VALID [2022-04-28 05:51:52,514 INFO L290 TraceCheckUtils]: 55: Hoare triple {36419#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {36419#false} is VALID [2022-04-28 05:51:52,515 INFO L290 TraceCheckUtils]: 54: Hoare triple {36652#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {36419#false} is VALID [2022-04-28 05:51:52,515 INFO L290 TraceCheckUtils]: 53: Hoare triple {36656#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36652#(< |main_#t~post8| 100)} is VALID [2022-04-28 05:51:52,515 INFO L290 TraceCheckUtils]: 52: Hoare triple {36656#(< ~counter~0 100)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,516 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {36418#true} {36656#(< ~counter~0 100)} #104#return; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,516 INFO L290 TraceCheckUtils]: 50: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:52,516 INFO L290 TraceCheckUtils]: 49: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:52,516 INFO L290 TraceCheckUtils]: 48: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:52,516 INFO L272 TraceCheckUtils]: 47: Hoare triple {36656#(< ~counter~0 100)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:52,517 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {36418#true} {36656#(< ~counter~0 100)} #102#return; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,517 INFO L290 TraceCheckUtils]: 45: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:52,517 INFO L290 TraceCheckUtils]: 44: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:52,517 INFO L290 TraceCheckUtils]: 43: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:52,517 INFO L272 TraceCheckUtils]: 42: Hoare triple {36656#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:52,517 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {36418#true} {36656#(< ~counter~0 100)} #100#return; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,518 INFO L290 TraceCheckUtils]: 40: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:52,518 INFO L290 TraceCheckUtils]: 39: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:52,518 INFO L290 TraceCheckUtils]: 38: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:52,518 INFO L272 TraceCheckUtils]: 37: Hoare triple {36656#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:52,518 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {36418#true} {36656#(< ~counter~0 100)} #98#return; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,518 INFO L290 TraceCheckUtils]: 35: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:52,518 INFO L290 TraceCheckUtils]: 34: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:52,519 INFO L290 TraceCheckUtils]: 33: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:52,519 INFO L272 TraceCheckUtils]: 32: Hoare triple {36656#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:52,519 INFO L290 TraceCheckUtils]: 31: Hoare triple {36656#(< ~counter~0 100)} assume !!(#t~post8 < 100);havoc #t~post8; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,520 INFO L290 TraceCheckUtils]: 30: Hoare triple {36726#(< ~counter~0 99)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {36656#(< ~counter~0 100)} is VALID [2022-04-28 05:51:52,520 INFO L290 TraceCheckUtils]: 29: Hoare triple {36726#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {36726#(< ~counter~0 99)} is VALID [2022-04-28 05:51:52,520 INFO L290 TraceCheckUtils]: 28: Hoare triple {36726#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {36726#(< ~counter~0 99)} is VALID [2022-04-28 05:51:52,521 INFO L290 TraceCheckUtils]: 27: Hoare triple {36736#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36726#(< ~counter~0 99)} is VALID [2022-04-28 05:51:52,521 INFO L290 TraceCheckUtils]: 26: Hoare triple {36736#(< ~counter~0 98)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36736#(< ~counter~0 98)} is VALID [2022-04-28 05:51:52,521 INFO L290 TraceCheckUtils]: 25: Hoare triple {36736#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {36736#(< ~counter~0 98)} is VALID [2022-04-28 05:51:52,522 INFO L290 TraceCheckUtils]: 24: Hoare triple {36746#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36736#(< ~counter~0 98)} is VALID [2022-04-28 05:51:52,522 INFO L290 TraceCheckUtils]: 23: Hoare triple {36746#(< ~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; {36746#(< ~counter~0 97)} is VALID [2022-04-28 05:51:52,523 INFO L290 TraceCheckUtils]: 22: Hoare triple {36746#(< ~counter~0 97)} assume !(~c~0 >= ~b~0); {36746#(< ~counter~0 97)} is VALID [2022-04-28 05:51:52,523 INFO L290 TraceCheckUtils]: 21: Hoare triple {36746#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {36746#(< ~counter~0 97)} is VALID [2022-04-28 05:51:52,523 INFO L290 TraceCheckUtils]: 20: Hoare triple {36759#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {36746#(< ~counter~0 97)} is VALID [2022-04-28 05:51:52,524 INFO L290 TraceCheckUtils]: 19: Hoare triple {36759#(< ~counter~0 96)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {36759#(< ~counter~0 96)} is VALID [2022-04-28 05:51:52,524 INFO L290 TraceCheckUtils]: 18: Hoare triple {36759#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {36759#(< ~counter~0 96)} is VALID [2022-04-28 05:51:52,525 INFO L290 TraceCheckUtils]: 17: Hoare triple {36769#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {36759#(< ~counter~0 96)} is VALID [2022-04-28 05:51:52,525 INFO L290 TraceCheckUtils]: 16: Hoare triple {36769#(< ~counter~0 95)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,525 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {36418#true} {36769#(< ~counter~0 95)} #96#return; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:52,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:52,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:52,525 INFO L272 TraceCheckUtils]: 11: Hoare triple {36769#(< ~counter~0 95)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:52,526 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36418#true} {36769#(< ~counter~0 95)} #94#return; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,526 INFO L290 TraceCheckUtils]: 9: Hoare triple {36418#true} assume true; {36418#true} is VALID [2022-04-28 05:51:52,526 INFO L290 TraceCheckUtils]: 8: Hoare triple {36418#true} assume !(0 == ~cond); {36418#true} is VALID [2022-04-28 05:51:52,526 INFO L290 TraceCheckUtils]: 7: Hoare triple {36418#true} ~cond := #in~cond; {36418#true} is VALID [2022-04-28 05:51:52,526 INFO L272 TraceCheckUtils]: 6: Hoare triple {36769#(< ~counter~0 95)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {36418#true} is VALID [2022-04-28 05:51:52,527 INFO L290 TraceCheckUtils]: 5: Hoare triple {36769#(< ~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;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,527 INFO L272 TraceCheckUtils]: 4: Hoare triple {36769#(< ~counter~0 95)} call #t~ret9 := main(); {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36769#(< ~counter~0 95)} {36418#true} #108#return; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {36769#(< ~counter~0 95)} assume true; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {36418#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {36769#(< ~counter~0 95)} is VALID [2022-04-28 05:51:52,528 INFO L272 TraceCheckUtils]: 0: Hoare triple {36418#true} call ULTIMATE.init(); {36418#true} is VALID [2022-04-28 05:51:52,528 INFO L134 CoverageAnalysis]: Checked inductivity of 53 backedges. 17 proven. 8 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:51:52,528 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:52,528 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [648577321] [2022-04-28 05:51:52,529 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:52,529 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [700770320] [2022-04-28 05:51:52,529 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [700770320] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:51:52,529 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:51:52,529 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 16 [2022-04-28 05:51:52,529 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:52,529 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [314774] [2022-04-28 05:51:52,529 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [314774] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:52,529 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:52,529 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 05:51:52,529 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [379132678] [2022-04-28 05:51:52,530 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:52,530 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 05:51:52,530 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:52,530 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:52,578 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:52,578 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 05:51:52,578 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:52,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 05:51:52,579 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=144, Unknown=0, NotChecked=0, Total=240 [2022-04-28 05:51:52,579 INFO L87 Difference]: Start difference. First operand 567 states and 783 transitions. Second operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:54,207 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:54,207 INFO L93 Difference]: Finished difference Result 839 states and 1203 transitions. [2022-04-28 05:51:54,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:51:54,208 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 65 [2022-04-28 05:51:54,208 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:54,208 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:54,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 05:51:54,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:54,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 153 transitions. [2022-04-28 05:51:54,210 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 153 transitions. [2022-04-28 05:51:54,323 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:54,340 INFO L225 Difference]: With dead ends: 839 [2022-04-28 05:51:54,340 INFO L226 Difference]: Without dead ends: 567 [2022-04-28 05:51:54,341 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 132 GetRequests, 115 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=135, Invalid=207, Unknown=0, NotChecked=0, Total=342 [2022-04-28 05:51:54,341 INFO L413 NwaCegarLoop]: 53 mSDtfsCounter, 77 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 203 SdHoareTripleChecker+Invalid, 115 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:54,341 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 203 Invalid, 115 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:54,342 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 567 states. [2022-04-28 05:51:55,778 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 567 to 567. [2022-04-28 05:51:55,779 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:51:55,779 INFO L82 GeneralOperation]: Start isEquivalent. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:55,780 INFO L74 IsIncluded]: Start isIncluded. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:55,783 INFO L87 Difference]: Start difference. First operand 567 states. Second operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:55,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:55,802 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 05:51:55,802 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:51:55,804 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:55,804 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:55,805 INFO L74 IsIncluded]: Start isIncluded. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 05:51:55,805 INFO L87 Difference]: Start difference. First operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) Second operand 567 states. [2022-04-28 05:51:55,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:55,824 INFO L93 Difference]: Finished difference Result 567 states and 779 transitions. [2022-04-28 05:51:55,824 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:51:55,825 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:51:55,825 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:51:55,825 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:51:55,825 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:51:55,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 567 states, 380 states have (on average 1.2894736842105263) internal successors, (490), 395 states have internal predecessors, (490), 146 states have call successors, (146), 41 states have call predecessors, (146), 40 states have return successors, (143), 130 states have call predecessors, (143), 143 states have call successors, (143) [2022-04-28 05:51:55,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 567 states to 567 states and 779 transitions. [2022-04-28 05:51:55,850 INFO L78 Accepts]: Start accepts. Automaton has 567 states and 779 transitions. Word has length 65 [2022-04-28 05:51:55,850 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:51:55,850 INFO L495 AbstractCegarLoop]: Abstraction has 567 states and 779 transitions. [2022-04-28 05:51:55,850 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.111111111111111) internal successors, (37), 8 states have internal predecessors, (37), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:51:55,850 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 567 states and 779 transitions. [2022-04-28 05:51:57,097 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:57,097 INFO L276 IsEmpty]: Start isEmpty. Operand 567 states and 779 transitions. [2022-04-28 05:51:57,098 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:51:57,098 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:51:57,098 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:51:57,115 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 05:51:57,303 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 05:51:57,303 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:51:57,304 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:51:57,304 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 1 times [2022-04-28 05:51:57,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:57,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2135645104] [2022-04-28 05:51:57,304 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:51:57,304 INFO L85 PathProgramCache]: Analyzing trace with hash -544828664, now seen corresponding path program 2 times [2022-04-28 05:51:57,304 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:51:57,304 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1175803115] [2022-04-28 05:51:57,304 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:51:57,304 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:51:57,325 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:51:57,325 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [219394049] [2022-04-28 05:51:57,326 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:51:57,326 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:51:57,326 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:51:57,327 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 05:51:57,328 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 05:51:57,379 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:51:57,379 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:51:57,380 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 05:51:57,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:51:57,393 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:51:57,567 INFO L272 TraceCheckUtils]: 0: Hoare triple {40775#true} call ULTIMATE.init(); {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L290 TraceCheckUtils]: 1: Hoare triple {40775#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L290 TraceCheckUtils]: 2: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40775#true} {40775#true} #108#return; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L272 TraceCheckUtils]: 4: Hoare triple {40775#true} call #t~ret9 := main(); {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L290 TraceCheckUtils]: 5: Hoare triple {40775#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L272 TraceCheckUtils]: 6: Hoare triple {40775#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L290 TraceCheckUtils]: 7: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L290 TraceCheckUtils]: 8: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L290 TraceCheckUtils]: 9: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40775#true} {40775#true} #94#return; {40775#true} is VALID [2022-04-28 05:51:57,567 INFO L272 TraceCheckUtils]: 11: Hoare triple {40775#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 12: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 13: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 14: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {40775#true} {40775#true} #96#return; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 16: Hoare triple {40775#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {40775#true} assume !!(#t~post6 < 100);havoc #t~post6; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 19: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 20: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 21: Hoare triple {40775#true} assume !!(#t~post7 < 100);havoc #t~post7; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 22: Hoare triple {40775#true} assume !(~c~0 >= ~b~0); {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 23: Hoare triple {40775#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 24: Hoare triple {40775#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 25: Hoare triple {40775#true} assume !!(#t~post6 < 100);havoc #t~post6; {40775#true} is VALID [2022-04-28 05:51:57,568 INFO L290 TraceCheckUtils]: 26: Hoare triple {40775#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {40775#true} is VALID [2022-04-28 05:51:57,569 INFO L290 TraceCheckUtils]: 27: Hoare triple {40775#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40775#true} is VALID [2022-04-28 05:51:57,569 INFO L290 TraceCheckUtils]: 28: Hoare triple {40775#true} assume !!(#t~post7 < 100);havoc #t~post7; {40775#true} is VALID [2022-04-28 05:51:57,569 INFO L290 TraceCheckUtils]: 29: Hoare triple {40775#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,569 INFO L290 TraceCheckUtils]: 30: Hoare triple {40867#(<= main_~v~0 main_~b~0)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,570 INFO L290 TraceCheckUtils]: 31: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !!(#t~post8 < 100);havoc #t~post8; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,570 INFO L272 TraceCheckUtils]: 32: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:57,570 INFO L290 TraceCheckUtils]: 33: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:57,570 INFO L290 TraceCheckUtils]: 34: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:57,570 INFO L290 TraceCheckUtils]: 35: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,570 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #98#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,570 INFO L272 TraceCheckUtils]: 37: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:57,571 INFO L290 TraceCheckUtils]: 38: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:57,571 INFO L290 TraceCheckUtils]: 39: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:57,571 INFO L290 TraceCheckUtils]: 40: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,571 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #100#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,571 INFO L272 TraceCheckUtils]: 42: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:57,571 INFO L290 TraceCheckUtils]: 43: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:57,571 INFO L290 TraceCheckUtils]: 44: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:57,572 INFO L290 TraceCheckUtils]: 45: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,572 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #102#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,572 INFO L272 TraceCheckUtils]: 47: Hoare triple {40867#(<= main_~v~0 main_~b~0)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {40775#true} is VALID [2022-04-28 05:51:57,572 INFO L290 TraceCheckUtils]: 48: Hoare triple {40775#true} ~cond := #in~cond; {40775#true} is VALID [2022-04-28 05:51:57,572 INFO L290 TraceCheckUtils]: 49: Hoare triple {40775#true} assume !(0 == ~cond); {40775#true} is VALID [2022-04-28 05:51:57,572 INFO L290 TraceCheckUtils]: 50: Hoare triple {40775#true} assume true; {40775#true} is VALID [2022-04-28 05:51:57,573 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {40775#true} {40867#(<= main_~v~0 main_~b~0)} #104#return; {40867#(<= main_~v~0 main_~b~0)} is VALID [2022-04-28 05:51:57,573 INFO L290 TraceCheckUtils]: 52: Hoare triple {40867#(<= main_~v~0 main_~b~0)} assume !(~c~0 >= 2 * ~v~0); {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} is VALID [2022-04-28 05:51:57,574 INFO L290 TraceCheckUtils]: 53: Hoare triple {40937#(and (<= main_~v~0 main_~b~0) (not (<= (* main_~v~0 2) main_~c~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:51:57,574 INFO L290 TraceCheckUtils]: 54: Hoare triple {40941#(< main_~c~0 main_~b~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:51:57,574 INFO L290 TraceCheckUtils]: 55: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(#t~post7 < 100);havoc #t~post7; {40941#(< main_~c~0 main_~b~0)} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 56: Hoare triple {40941#(< main_~c~0 main_~b~0)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 57: Hoare triple {40776#false} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 58: Hoare triple {40776#false} assume !(#t~post8 < 100);havoc #t~post8; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 59: Hoare triple {40776#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 60: Hoare triple {40776#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 61: Hoare triple {40776#false} assume !(#t~post7 < 100);havoc #t~post7; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 62: Hoare triple {40776#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 63: Hoare triple {40776#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 64: Hoare triple {40776#false} assume !(#t~post6 < 100);havoc #t~post6; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L272 TraceCheckUtils]: 65: Hoare triple {40776#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 66: Hoare triple {40776#false} ~cond := #in~cond; {40776#false} is VALID [2022-04-28 05:51:57,575 INFO L290 TraceCheckUtils]: 67: Hoare triple {40776#false} assume 0 == ~cond; {40776#false} is VALID [2022-04-28 05:51:57,576 INFO L290 TraceCheckUtils]: 68: Hoare triple {40776#false} assume !false; {40776#false} is VALID [2022-04-28 05:51:57,576 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 28 proven. 0 refuted. 0 times theorem prover too weak. 34 trivial. 0 not checked. [2022-04-28 05:51:57,576 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 05:51:57,576 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:51:57,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1175803115] [2022-04-28 05:51:57,576 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:51:57,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [219394049] [2022-04-28 05:51:57,576 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [219394049] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:57,576 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:57,576 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:57,576 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:51:57,577 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2135645104] [2022-04-28 05:51:57,577 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2135645104] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:51:57,577 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:51:57,577 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 05:51:57,577 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1513345568] [2022-04-28 05:51:57,577 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:51:57,577 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 05:51:57,577 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:51:57,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:57,637 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 05:51:57,637 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 05:51:57,637 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:51:57,638 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 05:51:57,638 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 05:51:57,638 INFO L87 Difference]: Start difference. First operand 567 states and 779 transitions. Second operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:59,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:51:59,532 INFO L93 Difference]: Finished difference Result 980 states and 1387 transitions. [2022-04-28 05:51:59,535 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 05:51:59,535 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 69 [2022-04-28 05:51:59,535 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:51:59,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:59,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 05:51:59,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:51:59,537 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 104 transitions. [2022-04-28 05:51:59,537 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 104 transitions. [2022-04-28 05:51:59,614 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:51:59,630 INFO L225 Difference]: With dead ends: 980 [2022-04-28 05:51:59,631 INFO L226 Difference]: Without dead ends: 624 [2022-04-28 05:51:59,632 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 66 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 05:51:59,632 INFO L413 NwaCegarLoop]: 48 mSDtfsCounter, 11 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 48 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:51:59,632 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 121 Invalid, 48 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:51:59,633 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 624 states. [2022-04-28 05:52:01,129 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 624 to 568. [2022-04-28 05:52:01,130 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:01,130 INFO L82 GeneralOperation]: Start isEquivalent. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,132 INFO L74 IsIncluded]: Start isIncluded. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,132 INFO L87 Difference]: Start difference. First operand 624 states. Second operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:01,153 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 05:52:01,153 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 05:52:01,154 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:01,154 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:01,155 INFO L74 IsIncluded]: Start isIncluded. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 05:52:01,155 INFO L87 Difference]: Start difference. First operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) Second operand 624 states. [2022-04-28 05:52:01,176 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:01,176 INFO L93 Difference]: Finished difference Result 624 states and 852 transitions. [2022-04-28 05:52:01,176 INFO L276 IsEmpty]: Start isEmpty. Operand 624 states and 852 transitions. [2022-04-28 05:52:01,178 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:01,178 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:01,178 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:01,178 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:01,179 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 568 states, 395 states have (on average 1.3012658227848102) internal successors, (514), 400 states have internal predecessors, (514), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 128 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:01,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 568 states to 568 states and 779 transitions. [2022-04-28 05:52:01,204 INFO L78 Accepts]: Start accepts. Automaton has 568 states and 779 transitions. Word has length 69 [2022-04-28 05:52:01,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:01,204 INFO L495 AbstractCegarLoop]: Abstraction has 568 states and 779 transitions. [2022-04-28 05:52:01,204 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 7.2) internal successors, (36), 5 states have internal predecessors, (36), 3 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:01,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 568 states and 779 transitions. [2022-04-28 05:52:02,563 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 779 edges. 779 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:02,563 INFO L276 IsEmpty]: Start isEmpty. Operand 568 states and 779 transitions. [2022-04-28 05:52:02,565 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-04-28 05:52:02,566 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:02,566 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:02,588 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 05:52:02,783 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 05:52:02,783 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:02,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:02,784 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 3 times [2022-04-28 05:52:02,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:02,784 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1652714522] [2022-04-28 05:52:02,784 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:02,785 INFO L85 PathProgramCache]: Analyzing trace with hash -996119216, now seen corresponding path program 4 times [2022-04-28 05:52:02,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:02,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1767876689] [2022-04-28 05:52:02,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:02,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:02,801 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:02,801 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1302741249] [2022-04-28 05:52:02,801 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:02,801 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:02,801 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:02,802 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 05:52:02,803 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 05:52:02,854 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:02,854 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:02,855 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-28 05:52:02,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:02,871 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:03,203 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 05:52:03,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,204 INFO L290 TraceCheckUtils]: 2: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,205 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45341#(<= ~counter~0 0)} {45333#true} #108#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,205 INFO L272 TraceCheckUtils]: 4: Hoare triple {45341#(<= ~counter~0 0)} call #t~ret9 := main(); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,205 INFO L290 TraceCheckUtils]: 5: Hoare triple {45341#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,206 INFO L272 TraceCheckUtils]: 6: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,206 INFO L290 TraceCheckUtils]: 7: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,206 INFO L290 TraceCheckUtils]: 8: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,206 INFO L290 TraceCheckUtils]: 9: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,207 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #94#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,207 INFO L272 TraceCheckUtils]: 11: Hoare triple {45341#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,208 INFO L290 TraceCheckUtils]: 12: Hoare triple {45341#(<= ~counter~0 0)} ~cond := #in~cond; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,208 INFO L290 TraceCheckUtils]: 13: Hoare triple {45341#(<= ~counter~0 0)} assume !(0 == ~cond); {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,208 INFO L290 TraceCheckUtils]: 14: Hoare triple {45341#(<= ~counter~0 0)} assume true; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,209 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45341#(<= ~counter~0 0)} {45341#(<= ~counter~0 0)} #96#return; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,209 INFO L290 TraceCheckUtils]: 16: Hoare triple {45341#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45341#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:03,210 INFO L290 TraceCheckUtils]: 17: Hoare triple {45341#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:03,210 INFO L290 TraceCheckUtils]: 18: Hoare triple {45390#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:03,210 INFO L290 TraceCheckUtils]: 19: Hoare triple {45390#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45390#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:03,211 INFO L290 TraceCheckUtils]: 20: Hoare triple {45390#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:03,211 INFO L290 TraceCheckUtils]: 21: Hoare triple {45400#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:03,212 INFO L290 TraceCheckUtils]: 22: Hoare triple {45400#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45400#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:03,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {45400#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {45410#(<= ~counter~0 3)} assume !!(#t~post8 < 100);havoc #t~post8; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,213 INFO L272 TraceCheckUtils]: 25: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,213 INFO L290 TraceCheckUtils]: 27: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,214 INFO L290 TraceCheckUtils]: 28: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,214 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #98#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,215 INFO L272 TraceCheckUtils]: 30: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,215 INFO L290 TraceCheckUtils]: 31: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,215 INFO L290 TraceCheckUtils]: 32: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,216 INFO L290 TraceCheckUtils]: 33: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,216 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #100#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,217 INFO L272 TraceCheckUtils]: 35: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,217 INFO L290 TraceCheckUtils]: 36: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,217 INFO L290 TraceCheckUtils]: 37: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,218 INFO L290 TraceCheckUtils]: 38: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,218 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #102#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,219 INFO L272 TraceCheckUtils]: 40: Hoare triple {45410#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,219 INFO L290 TraceCheckUtils]: 41: Hoare triple {45410#(<= ~counter~0 3)} ~cond := #in~cond; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,219 INFO L290 TraceCheckUtils]: 42: Hoare triple {45410#(<= ~counter~0 3)} assume !(0 == ~cond); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,219 INFO L290 TraceCheckUtils]: 43: Hoare triple {45410#(<= ~counter~0 3)} assume true; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,220 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45410#(<= ~counter~0 3)} {45410#(<= ~counter~0 3)} #104#return; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,220 INFO L290 TraceCheckUtils]: 45: Hoare triple {45410#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,220 INFO L290 TraceCheckUtils]: 46: Hoare triple {45410#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45410#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:03,221 INFO L290 TraceCheckUtils]: 47: Hoare triple {45410#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,221 INFO L290 TraceCheckUtils]: 48: Hoare triple {45483#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,222 INFO L290 TraceCheckUtils]: 49: Hoare triple {45483#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,222 INFO L290 TraceCheckUtils]: 50: Hoare triple {45483#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45483#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:03,223 INFO L290 TraceCheckUtils]: 51: Hoare triple {45483#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:03,223 INFO L290 TraceCheckUtils]: 52: Hoare triple {45496#(<= ~counter~0 5)} assume !!(#t~post6 < 100);havoc #t~post6; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:03,223 INFO L290 TraceCheckUtils]: 53: Hoare triple {45496#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45496#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:03,224 INFO L290 TraceCheckUtils]: 54: Hoare triple {45496#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:03,224 INFO L290 TraceCheckUtils]: 55: Hoare triple {45506#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:03,224 INFO L290 TraceCheckUtils]: 56: Hoare triple {45506#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45506#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:03,225 INFO L290 TraceCheckUtils]: 57: Hoare triple {45506#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45516#(<= |main_#t~post8| 6)} is VALID [2022-04-28 05:52:03,227 INFO L290 TraceCheckUtils]: 58: Hoare triple {45516#(<= |main_#t~post8| 6)} assume !(#t~post8 < 100);havoc #t~post8; {45334#false} is VALID [2022-04-28 05:52:03,227 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 05:52:03,227 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,227 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 100);havoc #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 100);havoc #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 05:52:03,228 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 05:52:03,229 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:03,229 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 68: Hoare triple {45334#false} assume !false; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 67: Hoare triple {45334#false} assume 0 == ~cond; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 66: Hoare triple {45334#false} ~cond := #in~cond; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L272 TraceCheckUtils]: 65: Hoare triple {45334#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 64: Hoare triple {45334#false} assume !(#t~post6 < 100);havoc #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 63: Hoare triple {45334#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 62: Hoare triple {45334#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 61: Hoare triple {45334#false} assume !(#t~post7 < 100);havoc #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 60: Hoare triple {45334#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45334#false} is VALID [2022-04-28 05:52:03,643 INFO L290 TraceCheckUtils]: 59: Hoare triple {45334#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45334#false} is VALID [2022-04-28 05:52:03,644 INFO L290 TraceCheckUtils]: 58: Hoare triple {45580#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {45334#false} is VALID [2022-04-28 05:52:03,644 INFO L290 TraceCheckUtils]: 57: Hoare triple {45584#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45580#(< |main_#t~post8| 100)} is VALID [2022-04-28 05:52:03,644 INFO L290 TraceCheckUtils]: 56: Hoare triple {45584#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45584#(< ~counter~0 100)} is VALID [2022-04-28 05:52:03,644 INFO L290 TraceCheckUtils]: 55: Hoare triple {45584#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {45584#(< ~counter~0 100)} is VALID [2022-04-28 05:52:03,645 INFO L290 TraceCheckUtils]: 54: Hoare triple {45594#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45584#(< ~counter~0 100)} is VALID [2022-04-28 05:52:03,646 INFO L290 TraceCheckUtils]: 53: Hoare triple {45594#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45594#(< ~counter~0 99)} is VALID [2022-04-28 05:52:03,646 INFO L290 TraceCheckUtils]: 52: Hoare triple {45594#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {45594#(< ~counter~0 99)} is VALID [2022-04-28 05:52:03,647 INFO L290 TraceCheckUtils]: 51: Hoare triple {45604#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45594#(< ~counter~0 99)} is VALID [2022-04-28 05:52:03,647 INFO L290 TraceCheckUtils]: 50: Hoare triple {45604#(< ~counter~0 98)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {45604#(< ~counter~0 98)} is VALID [2022-04-28 05:52:03,647 INFO L290 TraceCheckUtils]: 49: Hoare triple {45604#(< ~counter~0 98)} assume !(~c~0 >= ~b~0); {45604#(< ~counter~0 98)} is VALID [2022-04-28 05:52:03,647 INFO L290 TraceCheckUtils]: 48: Hoare triple {45604#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {45604#(< ~counter~0 98)} is VALID [2022-04-28 05:52:03,648 INFO L290 TraceCheckUtils]: 47: Hoare triple {45617#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45604#(< ~counter~0 98)} is VALID [2022-04-28 05:52:03,648 INFO L290 TraceCheckUtils]: 46: Hoare triple {45617#(< ~counter~0 97)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,649 INFO L290 TraceCheckUtils]: 45: Hoare triple {45617#(< ~counter~0 97)} assume !(~c~0 >= 2 * ~v~0); {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,649 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {45333#true} {45617#(< ~counter~0 97)} #104#return; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,649 INFO L290 TraceCheckUtils]: 43: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,651 INFO L290 TraceCheckUtils]: 42: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,651 INFO L290 TraceCheckUtils]: 41: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,651 INFO L272 TraceCheckUtils]: 40: Hoare triple {45617#(< ~counter~0 97)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,656 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {45333#true} {45617#(< ~counter~0 97)} #102#return; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,656 INFO L290 TraceCheckUtils]: 38: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,656 INFO L290 TraceCheckUtils]: 37: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,656 INFO L290 TraceCheckUtils]: 36: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,656 INFO L272 TraceCheckUtils]: 35: Hoare triple {45617#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,657 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {45333#true} {45617#(< ~counter~0 97)} #100#return; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,657 INFO L290 TraceCheckUtils]: 33: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,657 INFO L290 TraceCheckUtils]: 32: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,657 INFO L290 TraceCheckUtils]: 31: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,657 INFO L272 TraceCheckUtils]: 30: Hoare triple {45617#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,658 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {45333#true} {45617#(< ~counter~0 97)} #98#return; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,658 INFO L290 TraceCheckUtils]: 28: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,658 INFO L290 TraceCheckUtils]: 27: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,658 INFO L290 TraceCheckUtils]: 26: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,658 INFO L272 TraceCheckUtils]: 25: Hoare triple {45617#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,659 INFO L290 TraceCheckUtils]: 24: Hoare triple {45617#(< ~counter~0 97)} assume !!(#t~post8 < 100);havoc #t~post8; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,660 INFO L290 TraceCheckUtils]: 23: Hoare triple {45690#(< ~counter~0 96)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {45617#(< ~counter~0 97)} is VALID [2022-04-28 05:52:03,660 INFO L290 TraceCheckUtils]: 22: Hoare triple {45690#(< ~counter~0 96)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {45690#(< ~counter~0 96)} is VALID [2022-04-28 05:52:03,661 INFO L290 TraceCheckUtils]: 21: Hoare triple {45690#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {45690#(< ~counter~0 96)} is VALID [2022-04-28 05:52:03,661 INFO L290 TraceCheckUtils]: 20: Hoare triple {45700#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {45690#(< ~counter~0 96)} is VALID [2022-04-28 05:52:03,662 INFO L290 TraceCheckUtils]: 19: Hoare triple {45700#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {45700#(< ~counter~0 95)} is VALID [2022-04-28 05:52:03,662 INFO L290 TraceCheckUtils]: 18: Hoare triple {45700#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {45700#(< ~counter~0 95)} is VALID [2022-04-28 05:52:03,663 INFO L290 TraceCheckUtils]: 17: Hoare triple {45710#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {45700#(< ~counter~0 95)} is VALID [2022-04-28 05:52:03,663 INFO L290 TraceCheckUtils]: 16: Hoare triple {45710#(< ~counter~0 94)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,664 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {45333#true} {45710#(< ~counter~0 94)} #96#return; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,664 INFO L290 TraceCheckUtils]: 14: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,664 INFO L290 TraceCheckUtils]: 13: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,664 INFO L290 TraceCheckUtils]: 12: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,664 INFO L272 TraceCheckUtils]: 11: Hoare triple {45710#(< ~counter~0 94)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,665 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {45333#true} {45710#(< ~counter~0 94)} #94#return; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,665 INFO L290 TraceCheckUtils]: 9: Hoare triple {45333#true} assume true; {45333#true} is VALID [2022-04-28 05:52:03,665 INFO L290 TraceCheckUtils]: 8: Hoare triple {45333#true} assume !(0 == ~cond); {45333#true} is VALID [2022-04-28 05:52:03,665 INFO L290 TraceCheckUtils]: 7: Hoare triple {45333#true} ~cond := #in~cond; {45333#true} is VALID [2022-04-28 05:52:03,665 INFO L272 TraceCheckUtils]: 6: Hoare triple {45710#(< ~counter~0 94)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {45333#true} is VALID [2022-04-28 05:52:03,666 INFO L290 TraceCheckUtils]: 5: Hoare triple {45710#(< ~counter~0 94)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,666 INFO L272 TraceCheckUtils]: 4: Hoare triple {45710#(< ~counter~0 94)} call #t~ret9 := main(); {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,667 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {45710#(< ~counter~0 94)} {45333#true} #108#return; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,667 INFO L290 TraceCheckUtils]: 2: Hoare triple {45710#(< ~counter~0 94)} assume true; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,667 INFO L290 TraceCheckUtils]: 1: Hoare triple {45333#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {45710#(< ~counter~0 94)} is VALID [2022-04-28 05:52:03,667 INFO L272 TraceCheckUtils]: 0: Hoare triple {45333#true} call ULTIMATE.init(); {45333#true} is VALID [2022-04-28 05:52:03,668 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 20 proven. 14 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:03,668 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:03,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1767876689] [2022-04-28 05:52:03,668 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:03,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1302741249] [2022-04-28 05:52:03,668 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1302741249] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:03,668 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:03,668 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 10] total 18 [2022-04-28 05:52:03,668 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:03,668 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1652714522] [2022-04-28 05:52:03,668 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1652714522] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:03,669 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:03,669 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 05:52:03,669 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [71911340] [2022-04-28 05:52:03,669 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:03,670 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 05:52:03,670 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:03,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:03,722 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 05:52:03,722 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 05:52:03,722 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:03,722 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 05:52:03,722 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=181, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:52:03,723 INFO L87 Difference]: Start difference. First operand 568 states and 779 transitions. Second operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:05,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:05,666 INFO L93 Difference]: Finished difference Result 914 states and 1304 transitions. [2022-04-28 05:52:05,666 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 05:52:05,666 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 69 [2022-04-28 05:52:05,667 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:05,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:05,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 05:52:05,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:05,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 181 transitions. [2022-04-28 05:52:05,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 181 transitions. [2022-04-28 05:52:05,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 181 edges. 181 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:05,832 INFO L225 Difference]: With dead ends: 914 [2022-04-28 05:52:05,832 INFO L226 Difference]: Without dead ends: 584 [2022-04-28 05:52:05,833 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 141 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=185, Invalid=277, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:52:05,834 INFO L413 NwaCegarLoop]: 61 mSDtfsCounter, 86 mSDsluCounter, 215 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:05,834 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [86 Valid, 276 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 05:52:05,835 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 584 states. [2022-04-28 05:52:07,295 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 584 to 575. [2022-04-28 05:52:07,295 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:07,296 INFO L82 GeneralOperation]: Start isEquivalent. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:07,297 INFO L74 IsIncluded]: Start isIncluded. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:07,297 INFO L87 Difference]: Start difference. First operand 584 states. Second operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:07,314 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:07,314 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 05:52:07,314 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 05:52:07,315 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:07,315 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:07,315 INFO L74 IsIncluded]: Start isIncluded. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 05:52:07,316 INFO L87 Difference]: Start difference. First operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) Second operand 584 states. [2022-04-28 05:52:07,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:07,335 INFO L93 Difference]: Finished difference Result 584 states and 794 transitions. [2022-04-28 05:52:07,335 INFO L276 IsEmpty]: Start isEmpty. Operand 584 states and 794 transitions. [2022-04-28 05:52:07,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:07,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:07,336 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:07,336 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:07,337 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 575 states, 402 states have (on average 1.2960199004975124) internal successors, (521), 404 states have internal predecessors, (521), 134 states have call successors, (134), 39 states have call predecessors, (134), 38 states have return successors, (131), 131 states have call predecessors, (131), 131 states have call successors, (131) [2022-04-28 05:52:07,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 575 states to 575 states and 786 transitions. [2022-04-28 05:52:07,361 INFO L78 Accepts]: Start accepts. Automaton has 575 states and 786 transitions. Word has length 69 [2022-04-28 05:52:07,361 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:07,361 INFO L495 AbstractCegarLoop]: Abstraction has 575 states and 786 transitions. [2022-04-28 05:52:07,361 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 4.1) internal successors, (41), 9 states have internal predecessors, (41), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:07,361 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 575 states and 786 transitions. [2022-04-28 05:52:08,611 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 786 edges. 786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:08,612 INFO L276 IsEmpty]: Start isEmpty. Operand 575 states and 786 transitions. [2022-04-28 05:52:08,612 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 05:52:08,612 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:08,612 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:08,632 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 05:52:08,813 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 05:52:08,813 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:08,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:08,813 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 3 times [2022-04-28 05:52:08,813 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:08,813 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1479356974] [2022-04-28 05:52:08,814 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:08,814 INFO L85 PathProgramCache]: Analyzing trace with hash 862858316, now seen corresponding path program 4 times [2022-04-28 05:52:08,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:08,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [806461421] [2022-04-28 05:52:08,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:08,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:08,834 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:08,834 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1720621478] [2022-04-28 05:52:08,834 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:08,834 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:08,835 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:08,835 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 05:52:08,836 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 05:52:08,886 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:08,887 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:08,887 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:52:08,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:08,904 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:09,254 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 05:52:09,255 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,255 INFO L290 TraceCheckUtils]: 2: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,255 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49926#(<= ~counter~0 0)} {49918#true} #108#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,256 INFO L272 TraceCheckUtils]: 4: Hoare triple {49926#(<= ~counter~0 0)} call #t~ret9 := main(); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {49926#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,256 INFO L272 TraceCheckUtils]: 6: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,257 INFO L290 TraceCheckUtils]: 7: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #94#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,258 INFO L272 TraceCheckUtils]: 11: Hoare triple {49926#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,258 INFO L290 TraceCheckUtils]: 12: Hoare triple {49926#(<= ~counter~0 0)} ~cond := #in~cond; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {49926#(<= ~counter~0 0)} assume !(0 == ~cond); {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {49926#(<= ~counter~0 0)} assume true; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,259 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49926#(<= ~counter~0 0)} {49926#(<= ~counter~0 0)} #96#return; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,260 INFO L290 TraceCheckUtils]: 16: Hoare triple {49926#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {49926#(<= ~counter~0 0)} is VALID [2022-04-28 05:52:09,261 INFO L290 TraceCheckUtils]: 17: Hoare triple {49926#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:09,261 INFO L290 TraceCheckUtils]: 18: Hoare triple {49975#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:09,261 INFO L290 TraceCheckUtils]: 19: Hoare triple {49975#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49975#(<= ~counter~0 1)} is VALID [2022-04-28 05:52:09,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {49975#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:09,262 INFO L290 TraceCheckUtils]: 21: Hoare triple {49985#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:09,262 INFO L290 TraceCheckUtils]: 22: Hoare triple {49985#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:09,263 INFO L290 TraceCheckUtils]: 23: Hoare triple {49985#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49985#(<= ~counter~0 2)} is VALID [2022-04-28 05:52:09,263 INFO L290 TraceCheckUtils]: 24: Hoare triple {49985#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:09,263 INFO L290 TraceCheckUtils]: 25: Hoare triple {49998#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:09,264 INFO L290 TraceCheckUtils]: 26: Hoare triple {49998#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {49998#(<= ~counter~0 3)} is VALID [2022-04-28 05:52:09,264 INFO L290 TraceCheckUtils]: 27: Hoare triple {49998#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:09,265 INFO L290 TraceCheckUtils]: 28: Hoare triple {50008#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:09,265 INFO L290 TraceCheckUtils]: 29: Hoare triple {50008#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50008#(<= ~counter~0 4)} is VALID [2022-04-28 05:52:09,265 INFO L290 TraceCheckUtils]: 30: Hoare triple {50008#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,266 INFO L290 TraceCheckUtils]: 31: Hoare triple {50018#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,266 INFO L272 TraceCheckUtils]: 32: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,266 INFO L290 TraceCheckUtils]: 33: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,267 INFO L290 TraceCheckUtils]: 34: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,267 INFO L290 TraceCheckUtils]: 35: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,268 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #98#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,268 INFO L272 TraceCheckUtils]: 37: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,268 INFO L290 TraceCheckUtils]: 38: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,269 INFO L290 TraceCheckUtils]: 39: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,269 INFO L290 TraceCheckUtils]: 40: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,269 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #100#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,270 INFO L272 TraceCheckUtils]: 42: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,270 INFO L290 TraceCheckUtils]: 43: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,271 INFO L290 TraceCheckUtils]: 44: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,271 INFO L290 TraceCheckUtils]: 45: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,271 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #102#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,272 INFO L272 TraceCheckUtils]: 47: Hoare triple {50018#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,272 INFO L290 TraceCheckUtils]: 48: Hoare triple {50018#(<= ~counter~0 5)} ~cond := #in~cond; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,272 INFO L290 TraceCheckUtils]: 49: Hoare triple {50018#(<= ~counter~0 5)} assume !(0 == ~cond); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,273 INFO L290 TraceCheckUtils]: 50: Hoare triple {50018#(<= ~counter~0 5)} assume true; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,273 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {50018#(<= ~counter~0 5)} {50018#(<= ~counter~0 5)} #104#return; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,273 INFO L290 TraceCheckUtils]: 52: Hoare triple {50018#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,274 INFO L290 TraceCheckUtils]: 53: Hoare triple {50018#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50018#(<= ~counter~0 5)} is VALID [2022-04-28 05:52:09,274 INFO L290 TraceCheckUtils]: 54: Hoare triple {50018#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:09,274 INFO L290 TraceCheckUtils]: 55: Hoare triple {50091#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:09,275 INFO L290 TraceCheckUtils]: 56: Hoare triple {50091#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:09,275 INFO L290 TraceCheckUtils]: 57: Hoare triple {50091#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {50091#(<= ~counter~0 6)} is VALID [2022-04-28 05:52:09,276 INFO L290 TraceCheckUtils]: 58: Hoare triple {50091#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:09,276 INFO L290 TraceCheckUtils]: 59: Hoare triple {50104#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:09,276 INFO L290 TraceCheckUtils]: 60: Hoare triple {50104#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50104#(<= ~counter~0 7)} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 61: Hoare triple {50104#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50114#(<= |main_#t~post7| 7)} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 62: Hoare triple {50114#(<= |main_#t~post7| 7)} assume !(#t~post7 < 100);havoc #t~post7; {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 100);havoc #t~post6; {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 05:52:09,277 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 05:52:09,278 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:09,278 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:09,701 INFO L290 TraceCheckUtils]: 69: Hoare triple {49919#false} assume !false; {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L290 TraceCheckUtils]: 68: Hoare triple {49919#false} assume 0 == ~cond; {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L290 TraceCheckUtils]: 67: Hoare triple {49919#false} ~cond := #in~cond; {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L272 TraceCheckUtils]: 66: Hoare triple {49919#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L290 TraceCheckUtils]: 65: Hoare triple {49919#false} assume !(#t~post6 < 100);havoc #t~post6; {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L290 TraceCheckUtils]: 64: Hoare triple {49919#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L290 TraceCheckUtils]: 63: Hoare triple {49919#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {49919#false} is VALID [2022-04-28 05:52:09,702 INFO L290 TraceCheckUtils]: 62: Hoare triple {50160#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {49919#false} is VALID [2022-04-28 05:52:09,703 INFO L290 TraceCheckUtils]: 61: Hoare triple {50164#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50160#(< |main_#t~post7| 100)} is VALID [2022-04-28 05:52:09,703 INFO L290 TraceCheckUtils]: 60: Hoare triple {50164#(< ~counter~0 100)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50164#(< ~counter~0 100)} is VALID [2022-04-28 05:52:09,703 INFO L290 TraceCheckUtils]: 59: Hoare triple {50164#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {50164#(< ~counter~0 100)} is VALID [2022-04-28 05:52:09,704 INFO L290 TraceCheckUtils]: 58: Hoare triple {50174#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50164#(< ~counter~0 100)} is VALID [2022-04-28 05:52:09,705 INFO L290 TraceCheckUtils]: 57: Hoare triple {50174#(< ~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; {50174#(< ~counter~0 99)} is VALID [2022-04-28 05:52:09,705 INFO L290 TraceCheckUtils]: 56: Hoare triple {50174#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {50174#(< ~counter~0 99)} is VALID [2022-04-28 05:52:09,705 INFO L290 TraceCheckUtils]: 55: Hoare triple {50174#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {50174#(< ~counter~0 99)} is VALID [2022-04-28 05:52:09,706 INFO L290 TraceCheckUtils]: 54: Hoare triple {50187#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50174#(< ~counter~0 99)} is VALID [2022-04-28 05:52:09,706 INFO L290 TraceCheckUtils]: 53: Hoare triple {50187#(< ~counter~0 98)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,706 INFO L290 TraceCheckUtils]: 52: Hoare triple {50187#(< ~counter~0 98)} assume !(~c~0 >= 2 * ~v~0); {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,707 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {49918#true} {50187#(< ~counter~0 98)} #104#return; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,707 INFO L290 TraceCheckUtils]: 50: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,707 INFO L290 TraceCheckUtils]: 49: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,707 INFO L290 TraceCheckUtils]: 48: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,707 INFO L272 TraceCheckUtils]: 47: Hoare triple {50187#(< ~counter~0 98)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,708 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {49918#true} {50187#(< ~counter~0 98)} #102#return; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,708 INFO L290 TraceCheckUtils]: 45: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,708 INFO L290 TraceCheckUtils]: 44: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,708 INFO L290 TraceCheckUtils]: 43: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,708 INFO L272 TraceCheckUtils]: 42: Hoare triple {50187#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,709 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {49918#true} {50187#(< ~counter~0 98)} #100#return; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,709 INFO L290 TraceCheckUtils]: 40: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,709 INFO L290 TraceCheckUtils]: 39: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,709 INFO L290 TraceCheckUtils]: 38: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,709 INFO L272 TraceCheckUtils]: 37: Hoare triple {50187#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,709 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {49918#true} {50187#(< ~counter~0 98)} #98#return; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,709 INFO L290 TraceCheckUtils]: 35: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,710 INFO L290 TraceCheckUtils]: 34: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,710 INFO L290 TraceCheckUtils]: 33: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,710 INFO L272 TraceCheckUtils]: 32: Hoare triple {50187#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,710 INFO L290 TraceCheckUtils]: 31: Hoare triple {50187#(< ~counter~0 98)} assume !!(#t~post8 < 100);havoc #t~post8; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,711 INFO L290 TraceCheckUtils]: 30: Hoare triple {50260#(< ~counter~0 97)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {50187#(< ~counter~0 98)} is VALID [2022-04-28 05:52:09,711 INFO L290 TraceCheckUtils]: 29: Hoare triple {50260#(< ~counter~0 97)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {50260#(< ~counter~0 97)} is VALID [2022-04-28 05:52:09,711 INFO L290 TraceCheckUtils]: 28: Hoare triple {50260#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {50260#(< ~counter~0 97)} is VALID [2022-04-28 05:52:09,712 INFO L290 TraceCheckUtils]: 27: Hoare triple {50270#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50260#(< ~counter~0 97)} is VALID [2022-04-28 05:52:09,712 INFO L290 TraceCheckUtils]: 26: Hoare triple {50270#(< ~counter~0 96)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50270#(< ~counter~0 96)} is VALID [2022-04-28 05:52:09,712 INFO L290 TraceCheckUtils]: 25: Hoare triple {50270#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {50270#(< ~counter~0 96)} is VALID [2022-04-28 05:52:09,713 INFO L290 TraceCheckUtils]: 24: Hoare triple {50280#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50270#(< ~counter~0 96)} is VALID [2022-04-28 05:52:09,713 INFO L290 TraceCheckUtils]: 23: Hoare triple {50280#(< ~counter~0 95)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {50280#(< ~counter~0 95)} is VALID [2022-04-28 05:52:09,713 INFO L290 TraceCheckUtils]: 22: Hoare triple {50280#(< ~counter~0 95)} assume !(~c~0 >= ~b~0); {50280#(< ~counter~0 95)} is VALID [2022-04-28 05:52:09,714 INFO L290 TraceCheckUtils]: 21: Hoare triple {50280#(< ~counter~0 95)} assume !!(#t~post7 < 100);havoc #t~post7; {50280#(< ~counter~0 95)} is VALID [2022-04-28 05:52:09,714 INFO L290 TraceCheckUtils]: 20: Hoare triple {50293#(< ~counter~0 94)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {50280#(< ~counter~0 95)} is VALID [2022-04-28 05:52:09,715 INFO L290 TraceCheckUtils]: 19: Hoare triple {50293#(< ~counter~0 94)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {50293#(< ~counter~0 94)} is VALID [2022-04-28 05:52:09,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {50293#(< ~counter~0 94)} assume !!(#t~post6 < 100);havoc #t~post6; {50293#(< ~counter~0 94)} is VALID [2022-04-28 05:52:09,716 INFO L290 TraceCheckUtils]: 17: Hoare triple {50303#(< ~counter~0 93)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {50293#(< ~counter~0 94)} is VALID [2022-04-28 05:52:09,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {50303#(< ~counter~0 93)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,716 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {49918#true} {50303#(< ~counter~0 93)} #96#return; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,716 INFO L290 TraceCheckUtils]: 14: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,716 INFO L290 TraceCheckUtils]: 13: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,716 INFO L290 TraceCheckUtils]: 12: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,716 INFO L272 TraceCheckUtils]: 11: Hoare triple {50303#(< ~counter~0 93)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,717 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49918#true} {50303#(< ~counter~0 93)} #94#return; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,717 INFO L290 TraceCheckUtils]: 9: Hoare triple {49918#true} assume true; {49918#true} is VALID [2022-04-28 05:52:09,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {49918#true} assume !(0 == ~cond); {49918#true} is VALID [2022-04-28 05:52:09,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {49918#true} ~cond := #in~cond; {49918#true} is VALID [2022-04-28 05:52:09,717 INFO L272 TraceCheckUtils]: 6: Hoare triple {50303#(< ~counter~0 93)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {49918#true} is VALID [2022-04-28 05:52:09,717 INFO L290 TraceCheckUtils]: 5: Hoare triple {50303#(< ~counter~0 93)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,718 INFO L272 TraceCheckUtils]: 4: Hoare triple {50303#(< ~counter~0 93)} call #t~ret9 := main(); {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,718 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {50303#(< ~counter~0 93)} {49918#true} #108#return; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,718 INFO L290 TraceCheckUtils]: 2: Hoare triple {50303#(< ~counter~0 93)} assume true; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {49918#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {50303#(< ~counter~0 93)} is VALID [2022-04-28 05:52:09,719 INFO L272 TraceCheckUtils]: 0: Hoare triple {49918#true} call ULTIMATE.init(); {49918#true} is VALID [2022-04-28 05:52:09,719 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 16 proven. 25 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:52:09,719 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:09,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [806461421] [2022-04-28 05:52:09,719 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:09,719 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1720621478] [2022-04-28 05:52:09,719 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1720621478] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:09,720 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:09,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 05:52:09,720 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:09,720 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1479356974] [2022-04-28 05:52:09,720 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1479356974] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:09,720 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:09,720 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:52:09,720 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1663018729] [2022-04-28 05:52:09,720 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:09,720 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 05:52:09,720 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:09,721 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:09,764 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 05:52:09,764 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:52:09,764 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:09,765 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:52:09,765 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:52:09,765 INFO L87 Difference]: Start difference. First operand 575 states and 786 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:12,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:12,078 INFO L93 Difference]: Finished difference Result 918 states and 1274 transitions. [2022-04-28 05:52:12,078 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:52:12,078 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 70 [2022-04-28 05:52:12,078 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:12,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:12,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 05:52:12,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:12,082 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 210 transitions. [2022-04-28 05:52:12,082 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 210 transitions. [2022-04-28 05:52:12,248 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 210 edges. 210 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:12,267 INFO L225 Difference]: With dead ends: 918 [2022-04-28 05:52:12,267 INFO L226 Difference]: Without dead ends: 688 [2022-04-28 05:52:12,268 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 144 GetRequests, 121 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=244, Invalid=356, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:52:12,268 INFO L413 NwaCegarLoop]: 64 mSDtfsCounter, 120 mSDsluCounter, 237 mSDsCounter, 0 mSdLazyCounter, 145 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 120 SdHoareTripleChecker+Valid, 301 SdHoareTripleChecker+Invalid, 190 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 145 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:12,268 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [120 Valid, 301 Invalid, 190 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 145 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:52:12,269 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 688 states. [2022-04-28 05:52:13,916 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 688 to 658. [2022-04-28 05:52:13,916 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:13,917 INFO L82 GeneralOperation]: Start isEquivalent. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:13,917 INFO L74 IsIncluded]: Start isIncluded. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:13,917 INFO L87 Difference]: Start difference. First operand 688 states. Second operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:13,941 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:13,941 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 05:52:13,941 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 05:52:13,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:13,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:13,943 INFO L74 IsIncluded]: Start isIncluded. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 05:52:13,944 INFO L87 Difference]: Start difference. First operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 688 states. [2022-04-28 05:52:13,968 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:13,968 INFO L93 Difference]: Finished difference Result 688 states and 910 transitions. [2022-04-28 05:52:13,968 INFO L276 IsEmpty]: Start isEmpty. Operand 688 states and 910 transitions. [2022-04-28 05:52:13,970 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:13,970 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:13,970 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:13,970 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:13,971 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 658 states, 457 states have (on average 1.2735229759299782) internal successors, (582), 460 states have internal predecessors, (582), 151 states have call successors, (151), 50 states have call predecessors, (151), 49 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-04-28 05:52:14,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 658 states to 658 states and 880 transitions. [2022-04-28 05:52:14,002 INFO L78 Accepts]: Start accepts. Automaton has 658 states and 880 transitions. Word has length 70 [2022-04-28 05:52:14,003 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:14,003 INFO L495 AbstractCegarLoop]: Abstraction has 658 states and 880 transitions. [2022-04-28 05:52:14,003 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:52:14,003 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 658 states and 880 transitions. [2022-04-28 05:52:15,444 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 880 edges. 880 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:15,445 INFO L276 IsEmpty]: Start isEmpty. Operand 658 states and 880 transitions. [2022-04-28 05:52:15,445 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-04-28 05:52:15,445 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:15,445 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:15,461 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 05:52:15,646 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 05:52:15,646 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:15,646 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:15,646 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 1 times [2022-04-28 05:52:15,646 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:15,646 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [454946804] [2022-04-28 05:52:15,647 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:15,647 INFO L85 PathProgramCache]: Analyzing trace with hash -1546062343, now seen corresponding path program 2 times [2022-04-28 05:52:15,647 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:15,647 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2030414974] [2022-04-28 05:52:15,647 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:15,647 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:15,666 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:15,666 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1143821469] [2022-04-28 05:52:15,666 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:52:15,666 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:15,666 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:15,667 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 05:52:15,669 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 05:52:15,725 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:52:15,726 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:15,727 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-28 05:52:15,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:15,740 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:15,948 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 05:52:15,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {54895#true} is VALID [2022-04-28 05:52:15,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:15,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 05:52:15,948 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 05:52:15,948 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-28 05:52:15,948 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 100);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:15,949 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 100);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 100);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 100);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 100);havoc #t~post8; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:15,950 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:15,951 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 05:52:15,951 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:15,951 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:15,952 INFO L290 TraceCheckUtils]: 39: Hoare triple {55014#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:15,952 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:15,953 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,953 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:15,953 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:15,953 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:15,953 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:15,954 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,954 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:15,954 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:15,954 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:15,954 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:15,955 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,955 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,955 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,956 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,956 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,956 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:15,957 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,957 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,958 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,958 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,958 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,959 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,959 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,959 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,962 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:15,962 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:15,963 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:15,963 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 05:52:15,963 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 05:52:15,963 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 05:52:15,963 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:26,946 INFO L290 TraceCheckUtils]: 69: Hoare triple {54896#false} assume !false; {54896#false} is VALID [2022-04-28 05:52:26,947 INFO L290 TraceCheckUtils]: 68: Hoare triple {55106#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {54896#false} is VALID [2022-04-28 05:52:26,947 INFO L290 TraceCheckUtils]: 67: Hoare triple {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {55106#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:26,948 INFO L272 TraceCheckUtils]: 66: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {55102#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:26,948 INFO L290 TraceCheckUtils]: 65: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,948 INFO L290 TraceCheckUtils]: 64: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,949 INFO L290 TraceCheckUtils]: 63: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,949 INFO L290 TraceCheckUtils]: 62: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,949 INFO L290 TraceCheckUtils]: 61: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,950 INFO L290 TraceCheckUtils]: 60: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,950 INFO L290 TraceCheckUtils]: 59: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,950 INFO L290 TraceCheckUtils]: 58: Hoare triple {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,951 INFO L290 TraceCheckUtils]: 57: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {55074#(= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:52:26,951 INFO L290 TraceCheckUtils]: 56: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= ~b~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,952 INFO L290 TraceCheckUtils]: 55: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,952 INFO L290 TraceCheckUtils]: 54: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,952 INFO L290 TraceCheckUtils]: 53: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,953 INFO L290 TraceCheckUtils]: 52: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !(~c~0 >= 2 * ~v~0); {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,953 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #104#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,953 INFO L290 TraceCheckUtils]: 50: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:26,953 INFO L290 TraceCheckUtils]: 49: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:26,954 INFO L290 TraceCheckUtils]: 48: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:26,954 INFO L272 TraceCheckUtils]: 47: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:26,954 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {54895#true} {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #102#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,954 INFO L290 TraceCheckUtils]: 45: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:26,954 INFO L290 TraceCheckUtils]: 44: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:26,954 INFO L290 TraceCheckUtils]: 43: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:26,955 INFO L272 TraceCheckUtils]: 42: Hoare triple {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:26,955 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} {54895#true} #100#return; {55025#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:26,955 INFO L290 TraceCheckUtils]: 40: Hoare triple {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:26,956 INFO L290 TraceCheckUtils]: 39: Hoare triple {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {55018#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:26,956 INFO L290 TraceCheckUtils]: 38: Hoare triple {54895#true} ~cond := #in~cond; {55206#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:52:26,956 INFO L272 TraceCheckUtils]: 37: Hoare triple {54895#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:26,956 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {54895#true} {54895#true} #98#return; {54895#true} is VALID [2022-04-28 05:52:26,956 INFO L290 TraceCheckUtils]: 35: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:26,956 INFO L290 TraceCheckUtils]: 34: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:26,956 INFO L290 TraceCheckUtils]: 33: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L272 TraceCheckUtils]: 32: Hoare triple {54895#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 31: Hoare triple {54895#true} assume !!(#t~post8 < 100);havoc #t~post8; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 30: Hoare triple {54895#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 29: Hoare triple {54895#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 28: Hoare triple {54895#true} assume !!(#t~post7 < 100);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 27: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 26: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 25: Hoare triple {54895#true} assume !!(#t~post6 < 100);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 24: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 23: Hoare triple {54895#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 22: Hoare triple {54895#true} assume !(~c~0 >= ~b~0); {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 21: Hoare triple {54895#true} assume !!(#t~post7 < 100);havoc #t~post7; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 20: Hoare triple {54895#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {54895#true} is VALID [2022-04-28 05:52:26,957 INFO L290 TraceCheckUtils]: 19: Hoare triple {54895#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 18: Hoare triple {54895#true} assume !!(#t~post6 < 100);havoc #t~post6; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 17: Hoare triple {54895#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 16: Hoare triple {54895#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {54895#true} {54895#true} #96#return; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 14: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 13: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 12: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L272 TraceCheckUtils]: 11: Hoare triple {54895#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54895#true} {54895#true} #94#return; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {54895#true} assume !(0 == ~cond); {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {54895#true} ~cond := #in~cond; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L272 TraceCheckUtils]: 6: Hoare triple {54895#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L290 TraceCheckUtils]: 5: Hoare triple {54895#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {54895#true} is VALID [2022-04-28 05:52:26,958 INFO L272 TraceCheckUtils]: 4: Hoare triple {54895#true} call #t~ret9 := main(); {54895#true} is VALID [2022-04-28 05:52:26,959 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54895#true} {54895#true} #108#return; {54895#true} is VALID [2022-04-28 05:52:26,959 INFO L290 TraceCheckUtils]: 2: Hoare triple {54895#true} assume true; {54895#true} is VALID [2022-04-28 05:52:26,959 INFO L290 TraceCheckUtils]: 1: Hoare triple {54895#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {54895#true} is VALID [2022-04-28 05:52:26,959 INFO L272 TraceCheckUtils]: 0: Hoare triple {54895#true} call ULTIMATE.init(); {54895#true} is VALID [2022-04-28 05:52:26,959 INFO L134 CoverageAnalysis]: Checked inductivity of 67 backedges. 32 proven. 10 refuted. 0 times theorem prover too weak. 25 trivial. 0 not checked. [2022-04-28 05:52:26,959 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:52:26,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2030414974] [2022-04-28 05:52:26,959 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:52:26,959 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1143821469] [2022-04-28 05:52:26,959 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1143821469] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:52:26,960 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:52:26,960 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 9 [2022-04-28 05:52:26,960 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:52:26,960 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [454946804] [2022-04-28 05:52:26,960 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [454946804] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:52:26,960 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:52:26,960 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-28 05:52:26,960 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [959569733] [2022-04-28 05:52:26,960 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:52:26,960 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 05:52:26,961 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:52:26,961 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:27,002 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 05:52:27,002 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 05:52:27,002 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:27,003 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 05:52:27,003 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=53, Unknown=0, NotChecked=0, Total=72 [2022-04-28 05:52:27,003 INFO L87 Difference]: Start difference. First operand 658 states and 880 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:29,444 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:29,444 INFO L93 Difference]: Finished difference Result 757 states and 1022 transitions. [2022-04-28 05:52:29,444 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 05:52:29,444 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) Word has length 70 [2022-04-28 05:52:29,444 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:52:29,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:29,445 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 05:52:29,445 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:29,446 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 85 transitions. [2022-04-28 05:52:29,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 85 transitions. [2022-04-28 05:52:29,528 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:29,552 INFO L225 Difference]: With dead ends: 757 [2022-04-28 05:52:29,552 INFO L226 Difference]: Without dead ends: 755 [2022-04-28 05:52:29,552 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 132 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-28 05:52:29,553 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 30 mSDsluCounter, 174 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 212 SdHoareTripleChecker+Invalid, 133 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:52:29,553 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [32 Valid, 212 Invalid, 133 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:52:29,554 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 755 states. [2022-04-28 05:52:31,454 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 755 to 748. [2022-04-28 05:52:31,455 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:52:31,456 INFO L82 GeneralOperation]: Start isEquivalent. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,456 INFO L74 IsIncluded]: Start isIncluded. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,456 INFO L87 Difference]: Start difference. First operand 755 states. Second operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:31,475 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 05:52:31,475 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 05:52:31,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:31,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:31,477 INFO L74 IsIncluded]: Start isIncluded. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 05:52:31,477 INFO L87 Difference]: Start difference. First operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) Second operand 755 states. [2022-04-28 05:52:31,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:52:31,506 INFO L93 Difference]: Finished difference Result 755 states and 1020 transitions. [2022-04-28 05:52:31,506 INFO L276 IsEmpty]: Start isEmpty. Operand 755 states and 1020 transitions. [2022-04-28 05:52:31,507 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:52:31,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:52:31,508 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:52:31,508 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:52:31,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 748 states, 537 states have (on average 1.297951582867784) internal successors, (697), 546 states have internal predecessors, (697), 160 states have call successors, (160), 51 states have call predecessors, (160), 50 states have return successors, (156), 150 states have call predecessors, (156), 156 states have call successors, (156) [2022-04-28 05:52:31,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 748 states to 748 states and 1013 transitions. [2022-04-28 05:52:31,553 INFO L78 Accepts]: Start accepts. Automaton has 748 states and 1013 transitions. Word has length 70 [2022-04-28 05:52:31,553 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:52:31,553 INFO L495 AbstractCegarLoop]: Abstraction has 748 states and 1013 transitions. [2022-04-28 05:52:31,553 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 05:52:31,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 748 states and 1013 transitions. [2022-04-28 05:52:33,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1013 edges. 1013 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:52:33,260 INFO L276 IsEmpty]: Start isEmpty. Operand 748 states and 1013 transitions. [2022-04-28 05:52:33,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2022-04-28 05:52:33,261 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:52:33,261 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:52:33,279 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 05:52:33,461 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 05:52:33,462 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:52:33,462 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:52:33,462 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 3 times [2022-04-28 05:52:33,462 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:52:33,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1278196425] [2022-04-28 05:52:33,462 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:52:33,462 INFO L85 PathProgramCache]: Analyzing trace with hash -705069158, now seen corresponding path program 4 times [2022-04-28 05:52:33,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:52:33,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [343231462] [2022-04-28 05:52:33,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:52:33,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:52:33,473 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:52:33,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [421209107] [2022-04-28 05:52:33,474 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:52:33,474 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:52:33,474 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:52:33,475 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 05:52:33,494 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 05:52:33,533 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:52:33,533 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:52:33,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 202 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:52:33,547 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:52:33,548 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:52:34,454 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,454 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 05:52:34,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,457 INFO L290 TraceCheckUtils]: 19: Hoare triple {59903#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,457 INFO L290 TraceCheckUtils]: 20: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,457 INFO L290 TraceCheckUtils]: 21: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,458 INFO L290 TraceCheckUtils]: 22: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:52:34,458 INFO L290 TraceCheckUtils]: 23: Hoare triple {59913#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,459 INFO L290 TraceCheckUtils]: 24: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,459 INFO L290 TraceCheckUtils]: 25: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,459 INFO L290 TraceCheckUtils]: 26: Hoare triple {59926#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,460 INFO L290 TraceCheckUtils]: 27: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,460 INFO L290 TraceCheckUtils]: 28: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,461 INFO L290 TraceCheckUtils]: 29: Hoare triple {59936#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,461 INFO L290 TraceCheckUtils]: 30: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,462 INFO L290 TraceCheckUtils]: 31: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,462 INFO L272 TraceCheckUtils]: 32: Hoare triple {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,462 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:34,462 INFO L290 TraceCheckUtils]: 34: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,463 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,464 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59946#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,464 INFO L272 TraceCheckUtils]: 37: Hoare triple {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,464 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:34,464 INFO L290 TraceCheckUtils]: 39: Hoare triple {59959#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,464 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:52:34,465 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {59970#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,465 INFO L272 TraceCheckUtils]: 42: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,466 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,466 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,466 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,466 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,467 INFO L272 TraceCheckUtils]: 47: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,467 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,467 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,467 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,467 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,468 INFO L290 TraceCheckUtils]: 52: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:52:34,469 INFO L290 TraceCheckUtils]: 53: Hoare triple {59986#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~d~0 1) (= main_~x~0 main_~v~0) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,469 INFO L290 TraceCheckUtils]: 54: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,469 INFO L290 TraceCheckUtils]: 55: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,470 INFO L290 TraceCheckUtils]: 56: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} assume !(~c~0 >= ~b~0); {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:52:34,470 INFO L290 TraceCheckUtils]: 57: Hoare triple {60023#(and (= main_~s~0 0) (= (+ main_~c~0 main_~x~0) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~q~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,471 INFO L290 TraceCheckUtils]: 58: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,471 INFO L290 TraceCheckUtils]: 59: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post6 < 100);havoc #t~post6; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,472 INFO L290 TraceCheckUtils]: 60: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,472 INFO L290 TraceCheckUtils]: 61: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,472 INFO L290 TraceCheckUtils]: 62: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post7 < 100);havoc #t~post7; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,473 INFO L290 TraceCheckUtils]: 63: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,473 INFO L290 TraceCheckUtils]: 64: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,474 INFO L290 TraceCheckUtils]: 65: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} assume !!(#t~post8 < 100);havoc #t~post8; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,474 INFO L272 TraceCheckUtils]: 66: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:34,474 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:34,474 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:34,474 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:34,475 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} #98#return; {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} is VALID [2022-04-28 05:52:34,475 INFO L272 TraceCheckUtils]: 71: Hoare triple {60036#(and (= main_~s~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= (* (- 1) main_~q~0) 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:34,475 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:34,476 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 05:52:34,476 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 05:52:34,476 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 8 proven. 52 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-28 05:52:34,476 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:52:58,949 INFO L290 TraceCheckUtils]: 74: Hoare triple {59851#false} assume !false; {59851#false} is VALID [2022-04-28 05:52:58,950 INFO L290 TraceCheckUtils]: 73: Hoare triple {60083#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {59851#false} is VALID [2022-04-28 05:52:58,950 INFO L290 TraceCheckUtils]: 72: Hoare triple {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {60083#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:52:58,951 INFO L272 TraceCheckUtils]: 71: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {60079#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:52:58,951 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {59850#true} {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #98#return; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,951 INFO L290 TraceCheckUtils]: 69: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:52:58,951 INFO L290 TraceCheckUtils]: 68: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:52:58,952 INFO L290 TraceCheckUtils]: 67: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:52:58,952 INFO L272 TraceCheckUtils]: 66: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:52:58,952 INFO L290 TraceCheckUtils]: 65: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,952 INFO L290 TraceCheckUtils]: 64: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,953 INFO L290 TraceCheckUtils]: 63: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,953 INFO L290 TraceCheckUtils]: 62: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,953 INFO L290 TraceCheckUtils]: 61: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,954 INFO L290 TraceCheckUtils]: 60: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,954 INFO L290 TraceCheckUtils]: 59: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} assume !!(#t~post6 < 100);havoc #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:58,954 INFO L290 TraceCheckUtils]: 58: Hoare triple {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:59,952 INFO L290 TraceCheckUtils]: 57: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {60099#(= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))} is VALID [2022-04-28 05:52:59,953 INFO L290 TraceCheckUtils]: 56: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !(~c~0 >= ~b~0); {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:52:59,953 INFO L290 TraceCheckUtils]: 55: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:52:59,954 INFO L290 TraceCheckUtils]: 54: Hoare triple {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:53:00,380 INFO L290 TraceCheckUtils]: 53: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {60142#(= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ (* main_~k~0 main_~y~0 main_~s~0) main_~c~0 (* main_~q~0 main_~k~0 main_~x~0)))} is VALID [2022-04-28 05:53:00,380 INFO L290 TraceCheckUtils]: 52: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} assume !(~c~0 >= 2 * ~v~0); {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:00,381 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {59850#true} {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #104#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:00,381 INFO L290 TraceCheckUtils]: 50: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:00,381 INFO L290 TraceCheckUtils]: 49: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:00,382 INFO L290 TraceCheckUtils]: 48: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:00,382 INFO L272 TraceCheckUtils]: 47: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:00,382 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {59850#true} {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} #102#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:00,382 INFO L290 TraceCheckUtils]: 45: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:00,383 INFO L290 TraceCheckUtils]: 44: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:00,383 INFO L290 TraceCheckUtils]: 43: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:00,383 INFO L272 TraceCheckUtils]: 42: Hoare triple {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:00,384 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #100#return; {60155#(= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:00,384 INFO L290 TraceCheckUtils]: 40: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:00,384 INFO L290 TraceCheckUtils]: 39: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:00,385 INFO L290 TraceCheckUtils]: 38: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:00,385 INFO L272 TraceCheckUtils]: 37: Hoare triple {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:00,386 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #98#return; {60192#(or (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:00,386 INFO L290 TraceCheckUtils]: 35: Hoare triple {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:00,386 INFO L290 TraceCheckUtils]: 34: Hoare triple {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {59963#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:00,387 INFO L290 TraceCheckUtils]: 33: Hoare triple {59850#true} ~cond := #in~cond; {60202#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:00,387 INFO L272 TraceCheckUtils]: 32: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:00,387 INFO L290 TraceCheckUtils]: 31: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post8 < 100);havoc #t~post8; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:00,388 INFO L290 TraceCheckUtils]: 30: Hoare triple {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:00,388 INFO L290 TraceCheckUtils]: 29: Hoare triple {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {60209#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0) (* main_~y~0 main_~s~0 (+ main_~d~0 main_~k~0)) (* main_~q~0 main_~x~0 (+ main_~d~0 main_~k~0))) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:53:00,389 INFO L290 TraceCheckUtils]: 28: Hoare triple {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:00,389 INFO L290 TraceCheckUtils]: 27: Hoare triple {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:00,390 INFO L290 TraceCheckUtils]: 26: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {60231#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (+ main_~k~0 1) main_~q~0 main_~x~0) (* (+ main_~k~0 1) main_~y~0 main_~s~0) main_~c~0 (* (- 1) main_~b~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:00,390 INFO L290 TraceCheckUtils]: 25: Hoare triple {59850#true} assume !!(#t~post6 < 100);havoc #t~post6; {59850#true} is VALID [2022-04-28 05:53:00,390 INFO L290 TraceCheckUtils]: 24: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 23: Hoare triple {59850#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 22: Hoare triple {59850#true} assume !(~c~0 >= ~b~0); {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 21: Hoare triple {59850#true} assume !!(#t~post7 < 100);havoc #t~post7; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 20: Hoare triple {59850#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 19: Hoare triple {59850#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {59850#true} assume !!(#t~post6 < 100);havoc #t~post6; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 17: Hoare triple {59850#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 16: Hoare triple {59850#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {59850#true} {59850#true} #96#return; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 14: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 13: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 12: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L272 TraceCheckUtils]: 11: Hoare triple {59850#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {59850#true} {59850#true} #94#return; {59850#true} is VALID [2022-04-28 05:53:00,391 INFO L290 TraceCheckUtils]: 9: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L290 TraceCheckUtils]: 8: Hoare triple {59850#true} assume !(0 == ~cond); {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L290 TraceCheckUtils]: 7: Hoare triple {59850#true} ~cond := #in~cond; {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L272 TraceCheckUtils]: 6: Hoare triple {59850#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L290 TraceCheckUtils]: 5: Hoare triple {59850#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L272 TraceCheckUtils]: 4: Hoare triple {59850#true} call #t~ret9 := main(); {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {59850#true} {59850#true} #108#return; {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L290 TraceCheckUtils]: 2: Hoare triple {59850#true} assume true; {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L290 TraceCheckUtils]: 1: Hoare triple {59850#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L272 TraceCheckUtils]: 0: Hoare triple {59850#true} call ULTIMATE.init(); {59850#true} is VALID [2022-04-28 05:53:00,392 INFO L134 CoverageAnalysis]: Checked inductivity of 86 backedges. 27 proven. 30 refuted. 0 times theorem prover too weak. 29 trivial. 0 not checked. [2022-04-28 05:53:00,392 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:00,393 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [343231462] [2022-04-28 05:53:00,393 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:00,393 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [421209107] [2022-04-28 05:53:00,393 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [421209107] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:00,393 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:00,393 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 12] total 22 [2022-04-28 05:53:00,393 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:00,393 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1278196425] [2022-04-28 05:53:00,393 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1278196425] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:00,393 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:00,393 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:53:00,393 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1108386785] [2022-04-28 05:53:00,393 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:00,394 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 05:53:00,394 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:00,394 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:00,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:00,454 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:53:00,454 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:00,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:53:00,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=379, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:00,454 INFO L87 Difference]: Start difference. First operand 748 states and 1013 transitions. Second operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:04,901 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:04,901 INFO L93 Difference]: Finished difference Result 840 states and 1136 transitions. [2022-04-28 05:53:04,901 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:53:04,901 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 75 [2022-04-28 05:53:04,901 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:04,901 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:04,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 05:53:04,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:04,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 172 transitions. [2022-04-28 05:53:04,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 172 transitions. [2022-04-28 05:53:05,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:05,135 INFO L225 Difference]: With dead ends: 840 [2022-04-28 05:53:05,135 INFO L226 Difference]: Without dead ends: 838 [2022-04-28 05:53:05,136 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 128 SyntacticMatches, 1 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=110, Invalid=540, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:53:05,136 INFO L413 NwaCegarLoop]: 62 mSDtfsCounter, 81 mSDsluCounter, 468 mSDsCounter, 0 mSdLazyCounter, 724 mSolverCounterSat, 44 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 530 SdHoareTripleChecker+Invalid, 768 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 44 IncrementalHoareTripleChecker+Valid, 724 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:05,136 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [100 Valid, 530 Invalid, 768 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [44 Valid, 724 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-28 05:53:05,137 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 838 states. [2022-04-28 05:53:07,302 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 838 to 813. [2022-04-28 05:53:07,302 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:07,303 INFO L82 GeneralOperation]: Start isEquivalent. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,303 INFO L74 IsIncluded]: Start isIncluded. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,304 INFO L87 Difference]: Start difference. First operand 838 states. Second operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:07,328 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 05:53:07,328 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 05:53:07,329 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:07,329 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:07,330 INFO L74 IsIncluded]: Start isIncluded. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 05:53:07,330 INFO L87 Difference]: Start difference. First operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) Second operand 838 states. [2022-04-28 05:53:07,366 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:07,367 INFO L93 Difference]: Finished difference Result 838 states and 1134 transitions. [2022-04-28 05:53:07,367 INFO L276 IsEmpty]: Start isEmpty. Operand 838 states and 1134 transitions. [2022-04-28 05:53:07,368 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:07,368 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:07,368 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:07,368 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:07,369 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 813 states, 579 states have (on average 1.302245250431779) internal successors, (754), 589 states have internal predecessors, (754), 178 states have call successors, (178), 56 states have call predecessors, (178), 55 states have return successors, (174), 167 states have call predecessors, (174), 174 states have call successors, (174) [2022-04-28 05:53:07,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 813 states to 813 states and 1106 transitions. [2022-04-28 05:53:07,406 INFO L78 Accepts]: Start accepts. Automaton has 813 states and 1106 transitions. Word has length 75 [2022-04-28 05:53:07,407 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:07,407 INFO L495 AbstractCegarLoop]: Abstraction has 813 states and 1106 transitions. [2022-04-28 05:53:07,407 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 3.2142857142857144) internal successors, (45), 13 states have internal predecessors, (45), 5 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-28 05:53:07,407 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 813 states and 1106 transitions. [2022-04-28 05:53:09,311 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1106 edges. 1106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:09,311 INFO L276 IsEmpty]: Start isEmpty. Operand 813 states and 1106 transitions. [2022-04-28 05:53:09,312 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2022-04-28 05:53:09,312 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:09,312 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:09,329 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-28 05:53:09,512 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 05:53:09,512 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:09,513 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:09,513 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 5 times [2022-04-28 05:53:09,513 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:09,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1964536435] [2022-04-28 05:53:09,513 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:09,513 INFO L85 PathProgramCache]: Analyzing trace with hash -949871629, now seen corresponding path program 6 times [2022-04-28 05:53:09,513 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:09,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791240505] [2022-04-28 05:53:09,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:09,514 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:09,524 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:09,524 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [241993553] [2022-04-28 05:53:09,524 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:53:09,524 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:09,525 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:09,526 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 05:53:09,533 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 05:53:09,588 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:53:09,588 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:09,589 INFO L263 TraceCheckSpWp]: Trace formula consists of 263 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:53:09,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:09,607 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:09,970 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 05:53:09,971 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,971 INFO L290 TraceCheckUtils]: 2: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,971 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65319#(<= ~counter~0 0)} {65311#true} #108#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,972 INFO L272 TraceCheckUtils]: 4: Hoare triple {65319#(<= ~counter~0 0)} call #t~ret9 := main(); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,972 INFO L290 TraceCheckUtils]: 5: Hoare triple {65319#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,973 INFO L290 TraceCheckUtils]: 7: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,973 INFO L290 TraceCheckUtils]: 8: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,973 INFO L290 TraceCheckUtils]: 9: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,973 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #94#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,974 INFO L272 TraceCheckUtils]: 11: Hoare triple {65319#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,974 INFO L290 TraceCheckUtils]: 12: Hoare triple {65319#(<= ~counter~0 0)} ~cond := #in~cond; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,974 INFO L290 TraceCheckUtils]: 13: Hoare triple {65319#(<= ~counter~0 0)} assume !(0 == ~cond); {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {65319#(<= ~counter~0 0)} assume true; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,975 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65319#(<= ~counter~0 0)} {65319#(<= ~counter~0 0)} #96#return; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,975 INFO L290 TraceCheckUtils]: 16: Hoare triple {65319#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65319#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:09,977 INFO L290 TraceCheckUtils]: 17: Hoare triple {65319#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:09,977 INFO L290 TraceCheckUtils]: 18: Hoare triple {65368#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:09,977 INFO L290 TraceCheckUtils]: 19: Hoare triple {65368#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65368#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:09,978 INFO L290 TraceCheckUtils]: 20: Hoare triple {65368#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:09,978 INFO L290 TraceCheckUtils]: 21: Hoare triple {65378#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:09,978 INFO L290 TraceCheckUtils]: 22: Hoare triple {65378#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:09,979 INFO L290 TraceCheckUtils]: 23: Hoare triple {65378#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65378#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:09,980 INFO L290 TraceCheckUtils]: 24: Hoare triple {65378#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:09,980 INFO L290 TraceCheckUtils]: 25: Hoare triple {65391#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:09,980 INFO L290 TraceCheckUtils]: 26: Hoare triple {65391#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65391#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:09,981 INFO L290 TraceCheckUtils]: 27: Hoare triple {65391#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:09,981 INFO L290 TraceCheckUtils]: 28: Hoare triple {65401#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:09,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {65401#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65401#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:09,982 INFO L290 TraceCheckUtils]: 30: Hoare triple {65401#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,982 INFO L290 TraceCheckUtils]: 31: Hoare triple {65411#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,983 INFO L272 TraceCheckUtils]: 32: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,983 INFO L290 TraceCheckUtils]: 33: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,984 INFO L290 TraceCheckUtils]: 34: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,984 INFO L290 TraceCheckUtils]: 35: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,984 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #98#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,985 INFO L272 TraceCheckUtils]: 37: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,985 INFO L290 TraceCheckUtils]: 38: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,985 INFO L290 TraceCheckUtils]: 39: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,986 INFO L290 TraceCheckUtils]: 40: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,986 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #100#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,987 INFO L272 TraceCheckUtils]: 42: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,987 INFO L290 TraceCheckUtils]: 43: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,987 INFO L290 TraceCheckUtils]: 44: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,988 INFO L290 TraceCheckUtils]: 45: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,988 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #102#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,989 INFO L272 TraceCheckUtils]: 47: Hoare triple {65411#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,989 INFO L290 TraceCheckUtils]: 48: Hoare triple {65411#(<= ~counter~0 5)} ~cond := #in~cond; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,989 INFO L290 TraceCheckUtils]: 49: Hoare triple {65411#(<= ~counter~0 5)} assume !(0 == ~cond); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,989 INFO L290 TraceCheckUtils]: 50: Hoare triple {65411#(<= ~counter~0 5)} assume true; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,990 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65411#(<= ~counter~0 5)} {65411#(<= ~counter~0 5)} #104#return; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,990 INFO L290 TraceCheckUtils]: 52: Hoare triple {65411#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,990 INFO L290 TraceCheckUtils]: 53: Hoare triple {65411#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65411#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:09,991 INFO L290 TraceCheckUtils]: 54: Hoare triple {65411#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:09,991 INFO L290 TraceCheckUtils]: 55: Hoare triple {65484#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:09,992 INFO L290 TraceCheckUtils]: 56: Hoare triple {65484#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:09,992 INFO L290 TraceCheckUtils]: 57: Hoare triple {65484#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65484#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:09,993 INFO L290 TraceCheckUtils]: 58: Hoare triple {65484#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:09,993 INFO L290 TraceCheckUtils]: 59: Hoare triple {65497#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:09,993 INFO L290 TraceCheckUtils]: 60: Hoare triple {65497#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65497#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:09,994 INFO L290 TraceCheckUtils]: 61: Hoare triple {65497#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:09,994 INFO L290 TraceCheckUtils]: 62: Hoare triple {65507#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:09,994 INFO L290 TraceCheckUtils]: 63: Hoare triple {65507#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65507#(<= ~counter~0 8)} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 64: Hoare triple {65507#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65517#(<= |main_#t~post8| 8)} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 65: Hoare triple {65517#(<= |main_#t~post8| 8)} assume !(#t~post8 < 100);havoc #t~post8; {65312#false} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 100);havoc #t~post7; {65312#false} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65312#false} is VALID [2022-04-28 05:53:09,995 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 05:53:09,996 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 100);havoc #t~post6; {65312#false} is VALID [2022-04-28 05:53:09,996 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {65312#false} is VALID [2022-04-28 05:53:09,996 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 05:53:09,996 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 05:53:09,996 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 05:53:09,996 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:53:09,996 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:10,440 INFO L290 TraceCheckUtils]: 75: Hoare triple {65312#false} assume !false; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 74: Hoare triple {65312#false} assume 0 == ~cond; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 73: Hoare triple {65312#false} ~cond := #in~cond; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L272 TraceCheckUtils]: 72: Hoare triple {65312#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 71: Hoare triple {65312#false} assume !(#t~post6 < 100);havoc #t~post6; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 70: Hoare triple {65312#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 69: Hoare triple {65312#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 68: Hoare triple {65312#false} assume !(#t~post7 < 100);havoc #t~post7; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 67: Hoare triple {65312#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 66: Hoare triple {65312#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65312#false} is VALID [2022-04-28 05:53:10,441 INFO L290 TraceCheckUtils]: 65: Hoare triple {65581#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {65312#false} is VALID [2022-04-28 05:53:10,442 INFO L290 TraceCheckUtils]: 64: Hoare triple {65585#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65581#(< |main_#t~post8| 100)} is VALID [2022-04-28 05:53:10,442 INFO L290 TraceCheckUtils]: 63: Hoare triple {65585#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65585#(< ~counter~0 100)} is VALID [2022-04-28 05:53:10,442 INFO L290 TraceCheckUtils]: 62: Hoare triple {65585#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {65585#(< ~counter~0 100)} is VALID [2022-04-28 05:53:10,444 INFO L290 TraceCheckUtils]: 61: Hoare triple {65595#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65585#(< ~counter~0 100)} is VALID [2022-04-28 05:53:10,444 INFO L290 TraceCheckUtils]: 60: Hoare triple {65595#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65595#(< ~counter~0 99)} is VALID [2022-04-28 05:53:10,444 INFO L290 TraceCheckUtils]: 59: Hoare triple {65595#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {65595#(< ~counter~0 99)} is VALID [2022-04-28 05:53:10,445 INFO L290 TraceCheckUtils]: 58: Hoare triple {65605#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65595#(< ~counter~0 99)} is VALID [2022-04-28 05:53:10,445 INFO L290 TraceCheckUtils]: 57: Hoare triple {65605#(< ~counter~0 98)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65605#(< ~counter~0 98)} is VALID [2022-04-28 05:53:10,445 INFO L290 TraceCheckUtils]: 56: Hoare triple {65605#(< ~counter~0 98)} assume !(~c~0 >= ~b~0); {65605#(< ~counter~0 98)} is VALID [2022-04-28 05:53:10,446 INFO L290 TraceCheckUtils]: 55: Hoare triple {65605#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {65605#(< ~counter~0 98)} is VALID [2022-04-28 05:53:10,446 INFO L290 TraceCheckUtils]: 54: Hoare triple {65618#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65605#(< ~counter~0 98)} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 53: Hoare triple {65618#(< ~counter~0 97)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 52: Hoare triple {65618#(< ~counter~0 97)} assume !(~c~0 >= 2 * ~v~0); {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,447 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {65311#true} {65618#(< ~counter~0 97)} #104#return; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,447 INFO L290 TraceCheckUtils]: 50: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 49: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 48: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L272 TraceCheckUtils]: 47: Hoare triple {65618#(< ~counter~0 97)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {65311#true} {65618#(< ~counter~0 97)} #102#return; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 45: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 44: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L290 TraceCheckUtils]: 43: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,448 INFO L272 TraceCheckUtils]: 42: Hoare triple {65618#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,449 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {65311#true} {65618#(< ~counter~0 97)} #100#return; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,449 INFO L290 TraceCheckUtils]: 40: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,449 INFO L290 TraceCheckUtils]: 39: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,449 INFO L290 TraceCheckUtils]: 38: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,449 INFO L272 TraceCheckUtils]: 37: Hoare triple {65618#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,450 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {65311#true} {65618#(< ~counter~0 97)} #98#return; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 35: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 34: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 33: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,450 INFO L272 TraceCheckUtils]: 32: Hoare triple {65618#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,450 INFO L290 TraceCheckUtils]: 31: Hoare triple {65618#(< ~counter~0 97)} assume !!(#t~post8 < 100);havoc #t~post8; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,451 INFO L290 TraceCheckUtils]: 30: Hoare triple {65691#(< ~counter~0 96)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {65618#(< ~counter~0 97)} is VALID [2022-04-28 05:53:10,451 INFO L290 TraceCheckUtils]: 29: Hoare triple {65691#(< ~counter~0 96)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {65691#(< ~counter~0 96)} is VALID [2022-04-28 05:53:10,452 INFO L290 TraceCheckUtils]: 28: Hoare triple {65691#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {65691#(< ~counter~0 96)} is VALID [2022-04-28 05:53:10,452 INFO L290 TraceCheckUtils]: 27: Hoare triple {65701#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65691#(< ~counter~0 96)} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 26: Hoare triple {65701#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65701#(< ~counter~0 95)} is VALID [2022-04-28 05:53:10,453 INFO L290 TraceCheckUtils]: 25: Hoare triple {65701#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {65701#(< ~counter~0 95)} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 24: Hoare triple {65711#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65701#(< ~counter~0 95)} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 23: Hoare triple {65711#(< ~counter~0 94)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {65711#(< ~counter~0 94)} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 22: Hoare triple {65711#(< ~counter~0 94)} assume !(~c~0 >= ~b~0); {65711#(< ~counter~0 94)} is VALID [2022-04-28 05:53:10,454 INFO L290 TraceCheckUtils]: 21: Hoare triple {65711#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {65711#(< ~counter~0 94)} is VALID [2022-04-28 05:53:10,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {65724#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {65711#(< ~counter~0 94)} is VALID [2022-04-28 05:53:10,455 INFO L290 TraceCheckUtils]: 19: Hoare triple {65724#(< ~counter~0 93)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {65724#(< ~counter~0 93)} is VALID [2022-04-28 05:53:10,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {65724#(< ~counter~0 93)} assume !!(#t~post6 < 100);havoc #t~post6; {65724#(< ~counter~0 93)} is VALID [2022-04-28 05:53:10,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {65734#(< ~counter~0 92)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {65724#(< ~counter~0 93)} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 16: Hoare triple {65734#(< ~counter~0 92)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,457 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {65311#true} {65734#(< ~counter~0 92)} #96#return; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 14: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 13: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,457 INFO L290 TraceCheckUtils]: 12: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,457 INFO L272 TraceCheckUtils]: 11: Hoare triple {65734#(< ~counter~0 92)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,458 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {65311#true} {65734#(< ~counter~0 92)} #94#return; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {65311#true} assume true; {65311#true} is VALID [2022-04-28 05:53:10,458 INFO L290 TraceCheckUtils]: 8: Hoare triple {65311#true} assume !(0 == ~cond); {65311#true} is VALID [2022-04-28 05:53:10,458 INFO L290 TraceCheckUtils]: 7: Hoare triple {65311#true} ~cond := #in~cond; {65311#true} is VALID [2022-04-28 05:53:10,458 INFO L272 TraceCheckUtils]: 6: Hoare triple {65734#(< ~counter~0 92)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {65311#true} is VALID [2022-04-28 05:53:10,459 INFO L290 TraceCheckUtils]: 5: Hoare triple {65734#(< ~counter~0 92)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,459 INFO L272 TraceCheckUtils]: 4: Hoare triple {65734#(< ~counter~0 92)} call #t~ret9 := main(); {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,459 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65734#(< ~counter~0 92)} {65311#true} #108#return; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {65734#(< ~counter~0 92)} assume true; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,460 INFO L290 TraceCheckUtils]: 1: Hoare triple {65311#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {65734#(< ~counter~0 92)} is VALID [2022-04-28 05:53:10,460 INFO L272 TraceCheckUtils]: 0: Hoare triple {65311#true} call ULTIMATE.init(); {65311#true} is VALID [2022-04-28 05:53:10,460 INFO L134 CoverageAnalysis]: Checked inductivity of 83 backedges. 25 proven. 30 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 05:53:10,461 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:10,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [791240505] [2022-04-28 05:53:10,461 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:10,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [241993553] [2022-04-28 05:53:10,461 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [241993553] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:10,461 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:10,461 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:53:10,461 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:10,462 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1964536435] [2022-04-28 05:53:10,462 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1964536435] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:10,462 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:10,462 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:53:10,462 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1358901037] [2022-04-28 05:53:10,462 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:10,462 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 05:53:10,462 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:10,463 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:10,512 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 05:53:10,512 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:53:10,512 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:10,512 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:53:10,513 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:10,513 INFO L87 Difference]: Start difference. First operand 813 states and 1106 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:13,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:13,822 INFO L93 Difference]: Finished difference Result 1433 states and 1997 transitions. [2022-04-28 05:53:13,823 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:53:13,823 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) Word has length 76 [2022-04-28 05:53:13,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:13,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:13,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 05:53:13,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:13,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 239 transitions. [2022-04-28 05:53:13,826 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 239 transitions. [2022-04-28 05:53:14,018 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:14,059 INFO L225 Difference]: With dead ends: 1433 [2022-04-28 05:53:14,059 INFO L226 Difference]: Without dead ends: 975 [2022-04-28 05:53:14,060 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 131 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 42 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=309, Invalid=447, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:53:14,061 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 170 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 144 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 287 SdHoareTripleChecker+Invalid, 219 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 144 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:14,061 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 287 Invalid, 219 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 144 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:53:14,062 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 975 states. [2022-04-28 05:53:16,528 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 975 to 947. [2022-04-28 05:53:16,528 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:16,529 INFO L82 GeneralOperation]: Start isEquivalent. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:16,530 INFO L74 IsIncluded]: Start isIncluded. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:16,530 INFO L87 Difference]: Start difference. First operand 975 states. Second operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:16,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:16,571 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 05:53:16,571 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 05:53:16,572 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:16,573 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:16,574 INFO L74 IsIncluded]: Start isIncluded. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 05:53:16,574 INFO L87 Difference]: Start difference. First operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) Second operand 975 states. [2022-04-28 05:53:16,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:16,608 INFO L93 Difference]: Finished difference Result 975 states and 1288 transitions. [2022-04-28 05:53:16,608 INFO L276 IsEmpty]: Start isEmpty. Operand 975 states and 1288 transitions. [2022-04-28 05:53:16,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:16,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:16,610 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:16,610 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:16,611 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 947 states, 673 states have (on average 1.274888558692422) internal successors, (858), 683 states have internal predecessors, (858), 205 states have call successors, (205), 69 states have call predecessors, (205), 68 states have return successors, (200), 194 states have call predecessors, (200), 200 states have call successors, (200) [2022-04-28 05:53:16,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 947 states to 947 states and 1263 transitions. [2022-04-28 05:53:16,670 INFO L78 Accepts]: Start accepts. Automaton has 947 states and 1263 transitions. Word has length 76 [2022-04-28 05:53:16,670 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:16,670 INFO L495 AbstractCegarLoop]: Abstraction has 947 states and 1263 transitions. [2022-04-28 05:53:16,670 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 4 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (7), 2 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-28 05:53:16,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 947 states and 1263 transitions. [2022-04-28 05:53:19,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1263 edges. 1263 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:19,007 INFO L276 IsEmpty]: Start isEmpty. Operand 947 states and 1263 transitions. [2022-04-28 05:53:19,008 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 82 [2022-04-28 05:53:19,008 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:19,008 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:19,026 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Ended with exit code 0 [2022-04-28 05:53:19,208 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 05:53:19,208 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:19,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:19,209 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 1 times [2022-04-28 05:53:19,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:19,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [895217241] [2022-04-28 05:53:19,209 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:19,209 INFO L85 PathProgramCache]: Analyzing trace with hash -362795852, now seen corresponding path program 2 times [2022-04-28 05:53:19,209 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:19,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [141947971] [2022-04-28 05:53:19,210 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:19,210 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:19,220 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:19,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [911363085] [2022-04-28 05:53:19,220 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:19,220 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:19,220 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:19,221 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 05:53:19,245 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 05:53:19,283 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:19,284 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:19,285 INFO L263 TraceCheckSpWp]: Trace formula consists of 233 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-28 05:53:19,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:19,299 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:20,231 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 05:53:20,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,232 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,233 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 05:53:20,233 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,233 INFO L290 TraceCheckUtils]: 17: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,234 INFO L290 TraceCheckUtils]: 18: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,234 INFO L290 TraceCheckUtils]: 19: Hoare triple {72563#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,235 INFO L290 TraceCheckUtils]: 20: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,235 INFO L290 TraceCheckUtils]: 21: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,235 INFO L290 TraceCheckUtils]: 22: Hoare triple {72573#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,236 INFO L290 TraceCheckUtils]: 23: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,236 INFO L290 TraceCheckUtils]: 24: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,236 INFO L272 TraceCheckUtils]: 25: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,236 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,236 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,237 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,244 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,244 INFO L272 TraceCheckUtils]: 30: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,244 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,244 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,244 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,245 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,246 INFO L272 TraceCheckUtils]: 35: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,246 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,246 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,246 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,247 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,247 INFO L272 TraceCheckUtils]: 40: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,247 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,247 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,247 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,249 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,249 INFO L290 TraceCheckUtils]: 45: Hoare triple {72583#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,250 INFO L290 TraceCheckUtils]: 46: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,251 INFO L290 TraceCheckUtils]: 47: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,251 INFO L272 TraceCheckUtils]: 48: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,251 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,251 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,251 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,252 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,252 INFO L272 TraceCheckUtils]: 53: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,253 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:20,253 INFO L290 TraceCheckUtils]: 55: Hoare triple {72681#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:20,253 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:20,254 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,254 INFO L272 TraceCheckUtils]: 58: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,254 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,254 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,254 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,255 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,255 INFO L272 TraceCheckUtils]: 63: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:20,255 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:20,255 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:20,255 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:20,256 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,256 INFO L290 TraceCheckUtils]: 68: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,257 INFO L290 TraceCheckUtils]: 69: Hoare triple {72653#(and (= main_~r~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,258 INFO L290 TraceCheckUtils]: 70: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,258 INFO L290 TraceCheckUtils]: 71: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,259 INFO L290 TraceCheckUtils]: 72: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:20,259 INFO L290 TraceCheckUtils]: 73: Hoare triple {72728#(and (= (+ main_~c~0 (* main_~b~0 2)) main_~x~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:20,260 INFO L290 TraceCheckUtils]: 74: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:20,260 INFO L290 TraceCheckUtils]: 75: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:20,261 INFO L290 TraceCheckUtils]: 76: Hoare triple {72741#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* (- 2) main_~a~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} assume !(0 != ~b~0); {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} is VALID [2022-04-28 05:53:20,261 INFO L272 TraceCheckUtils]: 77: Hoare triple {72751#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~x~0 (* (- 2) main_~a~0)) 0) (= main_~q~0 1) (= (+ main_~s~0 (* main_~r~0 2)) 0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:20,262 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:20,262 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 05:53:20,262 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 05:53:20,262 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 05:53:20,262 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:32,941 INFO L290 TraceCheckUtils]: 80: Hoare triple {72511#false} assume !false; {72511#false} is VALID [2022-04-28 05:53:32,941 INFO L290 TraceCheckUtils]: 79: Hoare triple {72759#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {72511#false} is VALID [2022-04-28 05:53:32,941 INFO L290 TraceCheckUtils]: 78: Hoare triple {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {72759#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:32,942 INFO L272 TraceCheckUtils]: 77: Hoare triple {72775#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {72755#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:32,943 INFO L290 TraceCheckUtils]: 76: Hoare triple {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {72775#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:53:32,943 INFO L290 TraceCheckUtils]: 75: Hoare triple {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:53:32,943 INFO L290 TraceCheckUtils]: 74: Hoare triple {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:53:33,130 INFO L290 TraceCheckUtils]: 73: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {72779#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:53:33,131 INFO L290 TraceCheckUtils]: 72: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,132 INFO L290 TraceCheckUtils]: 71: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,132 INFO L290 TraceCheckUtils]: 70: Hoare triple {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,180 INFO L290 TraceCheckUtils]: 69: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {72789#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,181 INFO L290 TraceCheckUtils]: 68: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,181 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {72510#true} {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,182 INFO L290 TraceCheckUtils]: 66: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,182 INFO L290 TraceCheckUtils]: 65: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,182 INFO L290 TraceCheckUtils]: 64: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,182 INFO L272 TraceCheckUtils]: 63: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,183 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {72510#true} {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,183 INFO L290 TraceCheckUtils]: 61: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,183 INFO L290 TraceCheckUtils]: 60: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,183 INFO L290 TraceCheckUtils]: 59: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,183 INFO L272 TraceCheckUtils]: 58: Hoare triple {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,184 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {72802#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,184 INFO L290 TraceCheckUtils]: 56: Hoare triple {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:33,184 INFO L290 TraceCheckUtils]: 55: Hoare triple {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {72685#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:33,185 INFO L290 TraceCheckUtils]: 54: Hoare triple {72510#true} ~cond := #in~cond; {72849#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:53:33,185 INFO L272 TraceCheckUtils]: 53: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,186 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {72510#true} {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,186 INFO L290 TraceCheckUtils]: 51: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,186 INFO L290 TraceCheckUtils]: 50: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,186 INFO L290 TraceCheckUtils]: 49: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,186 INFO L272 TraceCheckUtils]: 48: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,187 INFO L290 TraceCheckUtils]: 47: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,187 INFO L290 TraceCheckUtils]: 46: Hoare triple {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,283 INFO L290 TraceCheckUtils]: 45: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {72839#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,284 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,284 INFO L290 TraceCheckUtils]: 43: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,284 INFO L290 TraceCheckUtils]: 42: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,284 INFO L290 TraceCheckUtils]: 41: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,284 INFO L272 TraceCheckUtils]: 40: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,285 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,285 INFO L290 TraceCheckUtils]: 38: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,285 INFO L290 TraceCheckUtils]: 37: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,285 INFO L290 TraceCheckUtils]: 36: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,285 INFO L272 TraceCheckUtils]: 35: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,286 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,286 INFO L290 TraceCheckUtils]: 33: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,286 INFO L290 TraceCheckUtils]: 32: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,286 INFO L290 TraceCheckUtils]: 31: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,286 INFO L272 TraceCheckUtils]: 30: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,287 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {72510#true} {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,287 INFO L290 TraceCheckUtils]: 28: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,287 INFO L290 TraceCheckUtils]: 27: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,287 INFO L290 TraceCheckUtils]: 26: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,287 INFO L272 TraceCheckUtils]: 25: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,288 INFO L290 TraceCheckUtils]: 24: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,288 INFO L290 TraceCheckUtils]: 23: Hoare triple {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,289 INFO L290 TraceCheckUtils]: 22: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {72877#(or (not (= (+ main_~c~0 (* (- 2) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:53:33,290 INFO L290 TraceCheckUtils]: 21: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 100);havoc #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:53:33,290 INFO L290 TraceCheckUtils]: 20: Hoare triple {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:53:33,291 INFO L290 TraceCheckUtils]: 19: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {72947#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (+ (* (- 2) main_~b~0) main_~c~0) 0)) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:53:33,291 INFO L290 TraceCheckUtils]: 18: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post6 < 100);havoc #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,292 INFO L290 TraceCheckUtils]: 17: Hoare triple {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,292 INFO L290 TraceCheckUtils]: 16: Hoare triple {72510#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {72957#(or (not (= main_~a~0 (* main_~b~0 2))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~x~0 (+ main_~p~0 (* (- 2) main_~q~0))) (* (+ (* (- 2) main_~s~0) main_~r~0) main_~y~0) main_~b~0) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:53:33,292 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {72510#true} {72510#true} #96#return; {72510#true} is VALID [2022-04-28 05:53:33,292 INFO L290 TraceCheckUtils]: 14: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,292 INFO L290 TraceCheckUtils]: 13: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,292 INFO L290 TraceCheckUtils]: 12: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L272 TraceCheckUtils]: 11: Hoare triple {72510#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {72510#true} {72510#true} #94#return; {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L290 TraceCheckUtils]: 9: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L290 TraceCheckUtils]: 8: Hoare triple {72510#true} assume !(0 == ~cond); {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L290 TraceCheckUtils]: 7: Hoare triple {72510#true} ~cond := #in~cond; {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L272 TraceCheckUtils]: 6: Hoare triple {72510#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L290 TraceCheckUtils]: 5: Hoare triple {72510#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L272 TraceCheckUtils]: 4: Hoare triple {72510#true} call #t~ret9 := main(); {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {72510#true} {72510#true} #108#return; {72510#true} is VALID [2022-04-28 05:53:33,293 INFO L290 TraceCheckUtils]: 2: Hoare triple {72510#true} assume true; {72510#true} is VALID [2022-04-28 05:53:33,294 INFO L290 TraceCheckUtils]: 1: Hoare triple {72510#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {72510#true} is VALID [2022-04-28 05:53:33,294 INFO L272 TraceCheckUtils]: 0: Hoare triple {72510#true} call ULTIMATE.init(); {72510#true} is VALID [2022-04-28 05:53:33,294 INFO L134 CoverageAnalysis]: Checked inductivity of 145 backedges. 30 proven. 20 refuted. 0 times theorem prover too weak. 95 trivial. 0 not checked. [2022-04-28 05:53:33,294 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:33,295 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [141947971] [2022-04-28 05:53:33,295 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:33,295 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [911363085] [2022-04-28 05:53:33,295 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [911363085] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:33,295 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:33,295 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14] total 22 [2022-04-28 05:53:33,295 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:33,295 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [895217241] [2022-04-28 05:53:33,295 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [895217241] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:33,296 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:33,296 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:53:33,296 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [503305188] [2022-04-28 05:53:33,296 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:33,296 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 81 [2022-04-28 05:53:33,296 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:33,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:33,369 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:33,370 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:53:33,370 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:33,370 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:53:33,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=392, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:53:33,370 INFO L87 Difference]: Start difference. First operand 947 states and 1263 transitions. Second operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:38,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:38,883 INFO L93 Difference]: Finished difference Result 1025 states and 1371 transitions. [2022-04-28 05:53:38,883 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 05:53:38,883 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) Word has length 81 [2022-04-28 05:53:38,883 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:38,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:38,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 05:53:38,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:38,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 162 transitions. [2022-04-28 05:53:38,885 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 162 transitions. [2022-04-28 05:53:39,073 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:39,122 INFO L225 Difference]: With dead ends: 1025 [2022-04-28 05:53:39,123 INFO L226 Difference]: Without dead ends: 1022 [2022-04-28 05:53:39,123 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 168 GetRequests, 140 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 111 ImplicationChecksByTransitivity, 1.5s TimeCoverageRelationStatistics Valid=132, Invalid=680, Unknown=0, NotChecked=0, Total=812 [2022-04-28 05:53:39,123 INFO L413 NwaCegarLoop]: 63 mSDtfsCounter, 74 mSDsluCounter, 438 mSDsCounter, 0 mSdLazyCounter, 760 mSolverCounterSat, 59 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 501 SdHoareTripleChecker+Invalid, 819 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 59 IncrementalHoareTripleChecker+Valid, 760 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:39,124 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [82 Valid, 501 Invalid, 819 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [59 Valid, 760 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-04-28 05:53:39,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1022 states. [2022-04-28 05:53:41,578 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1022 to 957. [2022-04-28 05:53:41,578 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:41,579 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:41,580 INFO L74 IsIncluded]: Start isIncluded. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:41,581 INFO L87 Difference]: Start difference. First operand 1022 states. Second operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:41,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:41,614 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 05:53:41,614 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 05:53:41,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:41,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:41,616 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 05:53:41,617 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 1022 states. [2022-04-28 05:53:41,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:41,649 INFO L93 Difference]: Finished difference Result 1022 states and 1364 transitions. [2022-04-28 05:53:41,649 INFO L276 IsEmpty]: Start isEmpty. Operand 1022 states and 1364 transitions. [2022-04-28 05:53:41,650 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:41,650 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:41,650 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:41,650 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:41,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2695139911634756) internal successors, (862), 689 states have internal predecessors, (862), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:41,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1272 transitions. [2022-04-28 05:53:41,696 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1272 transitions. Word has length 81 [2022-04-28 05:53:41,696 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:41,696 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1272 transitions. [2022-04-28 05:53:41,696 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 3.0) internal successors, (36), 12 states have internal predecessors, (36), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 3 states have call successors, (11) [2022-04-28 05:53:41,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1272 transitions. [2022-04-28 05:53:44,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1272 edges. 1272 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:44,049 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1272 transitions. [2022-04-28 05:53:44,050 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-04-28 05:53:44,050 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:44,050 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:44,066 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 05:53:44,250 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 05:53:44,250 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:44,251 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:44,251 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 1 times [2022-04-28 05:53:44,251 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:44,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1085974251] [2022-04-28 05:53:44,251 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:44,251 INFO L85 PathProgramCache]: Analyzing trace with hash -2112645673, now seen corresponding path program 2 times [2022-04-28 05:53:44,251 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:44,251 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [169882388] [2022-04-28 05:53:44,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:44,252 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:44,261 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:44,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [842694968] [2022-04-28 05:53:44,262 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:53:44,262 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:44,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:44,263 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 05:53:44,266 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 05:53:44,323 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:53:44,323 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:44,324 INFO L263 TraceCheckSpWp]: Trace formula consists of 261 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-28 05:53:44,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:44,343 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:44,729 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 05:53:44,729 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,730 INFO L290 TraceCheckUtils]: 2: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,730 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79047#(<= ~counter~0 0)} {79039#true} #108#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,730 INFO L272 TraceCheckUtils]: 4: Hoare triple {79047#(<= ~counter~0 0)} call #t~ret9 := main(); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,731 INFO L290 TraceCheckUtils]: 5: Hoare triple {79047#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,731 INFO L272 TraceCheckUtils]: 6: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,731 INFO L290 TraceCheckUtils]: 7: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,732 INFO L290 TraceCheckUtils]: 8: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,732 INFO L290 TraceCheckUtils]: 9: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,732 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #94#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,733 INFO L272 TraceCheckUtils]: 11: Hoare triple {79047#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,733 INFO L290 TraceCheckUtils]: 12: Hoare triple {79047#(<= ~counter~0 0)} ~cond := #in~cond; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,733 INFO L290 TraceCheckUtils]: 13: Hoare triple {79047#(<= ~counter~0 0)} assume !(0 == ~cond); {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,734 INFO L290 TraceCheckUtils]: 14: Hoare triple {79047#(<= ~counter~0 0)} assume true; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,734 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79047#(<= ~counter~0 0)} {79047#(<= ~counter~0 0)} #96#return; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,734 INFO L290 TraceCheckUtils]: 16: Hoare triple {79047#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79047#(<= ~counter~0 0)} is VALID [2022-04-28 05:53:44,736 INFO L290 TraceCheckUtils]: 17: Hoare triple {79047#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:44,736 INFO L290 TraceCheckUtils]: 18: Hoare triple {79096#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:44,736 INFO L290 TraceCheckUtils]: 19: Hoare triple {79096#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79096#(<= ~counter~0 1)} is VALID [2022-04-28 05:53:44,737 INFO L290 TraceCheckUtils]: 20: Hoare triple {79096#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:44,737 INFO L290 TraceCheckUtils]: 21: Hoare triple {79106#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:44,737 INFO L290 TraceCheckUtils]: 22: Hoare triple {79106#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:44,738 INFO L290 TraceCheckUtils]: 23: Hoare triple {79106#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79106#(<= ~counter~0 2)} is VALID [2022-04-28 05:53:44,738 INFO L290 TraceCheckUtils]: 24: Hoare triple {79106#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:44,763 INFO L290 TraceCheckUtils]: 25: Hoare triple {79119#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:44,764 INFO L290 TraceCheckUtils]: 26: Hoare triple {79119#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79119#(<= ~counter~0 3)} is VALID [2022-04-28 05:53:44,765 INFO L290 TraceCheckUtils]: 27: Hoare triple {79119#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:44,766 INFO L290 TraceCheckUtils]: 28: Hoare triple {79129#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:44,766 INFO L290 TraceCheckUtils]: 29: Hoare triple {79129#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79129#(<= ~counter~0 4)} is VALID [2022-04-28 05:53:44,767 INFO L290 TraceCheckUtils]: 30: Hoare triple {79129#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,767 INFO L290 TraceCheckUtils]: 31: Hoare triple {79139#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,768 INFO L272 TraceCheckUtils]: 32: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,769 INFO L290 TraceCheckUtils]: 33: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,769 INFO L290 TraceCheckUtils]: 34: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,769 INFO L290 TraceCheckUtils]: 35: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,770 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #98#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,771 INFO L272 TraceCheckUtils]: 37: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,771 INFO L290 TraceCheckUtils]: 38: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,772 INFO L290 TraceCheckUtils]: 39: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,772 INFO L290 TraceCheckUtils]: 40: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,773 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #100#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,773 INFO L272 TraceCheckUtils]: 42: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,774 INFO L290 TraceCheckUtils]: 43: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,774 INFO L290 TraceCheckUtils]: 44: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,775 INFO L290 TraceCheckUtils]: 45: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,775 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #102#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,776 INFO L272 TraceCheckUtils]: 47: Hoare triple {79139#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,776 INFO L290 TraceCheckUtils]: 48: Hoare triple {79139#(<= ~counter~0 5)} ~cond := #in~cond; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,777 INFO L290 TraceCheckUtils]: 49: Hoare triple {79139#(<= ~counter~0 5)} assume !(0 == ~cond); {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,777 INFO L290 TraceCheckUtils]: 50: Hoare triple {79139#(<= ~counter~0 5)} assume true; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,778 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79139#(<= ~counter~0 5)} {79139#(<= ~counter~0 5)} #104#return; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,778 INFO L290 TraceCheckUtils]: 52: Hoare triple {79139#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79139#(<= ~counter~0 5)} is VALID [2022-04-28 05:53:44,780 INFO L290 TraceCheckUtils]: 53: Hoare triple {79139#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,780 INFO L290 TraceCheckUtils]: 54: Hoare triple {79209#(<= ~counter~0 6)} assume !!(#t~post8 < 100);havoc #t~post8; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,781 INFO L272 TraceCheckUtils]: 55: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,781 INFO L290 TraceCheckUtils]: 56: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,782 INFO L290 TraceCheckUtils]: 57: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,782 INFO L290 TraceCheckUtils]: 58: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,783 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #98#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,784 INFO L272 TraceCheckUtils]: 60: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,784 INFO L290 TraceCheckUtils]: 61: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,785 INFO L290 TraceCheckUtils]: 62: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,785 INFO L290 TraceCheckUtils]: 63: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,786 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #100#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,786 INFO L272 TraceCheckUtils]: 65: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,787 INFO L290 TraceCheckUtils]: 66: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,787 INFO L290 TraceCheckUtils]: 67: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,788 INFO L290 TraceCheckUtils]: 68: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,788 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #102#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,789 INFO L272 TraceCheckUtils]: 70: Hoare triple {79209#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,789 INFO L290 TraceCheckUtils]: 71: Hoare triple {79209#(<= ~counter~0 6)} ~cond := #in~cond; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,790 INFO L290 TraceCheckUtils]: 72: Hoare triple {79209#(<= ~counter~0 6)} assume !(0 == ~cond); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,790 INFO L290 TraceCheckUtils]: 73: Hoare triple {79209#(<= ~counter~0 6)} assume true; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,791 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79209#(<= ~counter~0 6)} {79209#(<= ~counter~0 6)} #104#return; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,791 INFO L290 TraceCheckUtils]: 75: Hoare triple {79209#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,792 INFO L290 TraceCheckUtils]: 76: Hoare triple {79209#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79209#(<= ~counter~0 6)} is VALID [2022-04-28 05:53:44,793 INFO L290 TraceCheckUtils]: 77: Hoare triple {79209#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:44,793 INFO L290 TraceCheckUtils]: 78: Hoare triple {79282#(<= ~counter~0 7)} assume !!(#t~post7 < 100);havoc #t~post7; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:44,794 INFO L290 TraceCheckUtils]: 79: Hoare triple {79282#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:44,794 INFO L290 TraceCheckUtils]: 80: Hoare triple {79282#(<= ~counter~0 7)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79282#(<= ~counter~0 7)} is VALID [2022-04-28 05:53:44,795 INFO L290 TraceCheckUtils]: 81: Hoare triple {79282#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79295#(<= |main_#t~post6| 7)} is VALID [2022-04-28 05:53:44,795 INFO L290 TraceCheckUtils]: 82: Hoare triple {79295#(<= |main_#t~post6| 7)} assume !(#t~post6 < 100);havoc #t~post6; {79040#false} is VALID [2022-04-28 05:53:44,795 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {79040#false} is VALID [2022-04-28 05:53:44,796 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 05:53:44,796 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 05:53:44,796 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 05:53:44,796 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 88 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:53:44,796 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:53:45,276 INFO L290 TraceCheckUtils]: 86: Hoare triple {79040#false} assume !false; {79040#false} is VALID [2022-04-28 05:53:45,277 INFO L290 TraceCheckUtils]: 85: Hoare triple {79040#false} assume 0 == ~cond; {79040#false} is VALID [2022-04-28 05:53:45,277 INFO L290 TraceCheckUtils]: 84: Hoare triple {79040#false} ~cond := #in~cond; {79040#false} is VALID [2022-04-28 05:53:45,277 INFO L272 TraceCheckUtils]: 83: Hoare triple {79040#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {79040#false} is VALID [2022-04-28 05:53:45,279 INFO L290 TraceCheckUtils]: 82: Hoare triple {79323#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {79040#false} is VALID [2022-04-28 05:53:45,280 INFO L290 TraceCheckUtils]: 81: Hoare triple {79327#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79323#(< |main_#t~post6| 100)} is VALID [2022-04-28 05:53:45,280 INFO L290 TraceCheckUtils]: 80: Hoare triple {79327#(< ~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; {79327#(< ~counter~0 100)} is VALID [2022-04-28 05:53:45,280 INFO L290 TraceCheckUtils]: 79: Hoare triple {79327#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {79327#(< ~counter~0 100)} is VALID [2022-04-28 05:53:45,281 INFO L290 TraceCheckUtils]: 78: Hoare triple {79327#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {79327#(< ~counter~0 100)} is VALID [2022-04-28 05:53:45,282 INFO L290 TraceCheckUtils]: 77: Hoare triple {79340#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79327#(< ~counter~0 100)} is VALID [2022-04-28 05:53:45,282 INFO L290 TraceCheckUtils]: 76: Hoare triple {79340#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,283 INFO L290 TraceCheckUtils]: 75: Hoare triple {79340#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,283 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {79039#true} {79340#(< ~counter~0 99)} #104#return; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,283 INFO L290 TraceCheckUtils]: 73: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,283 INFO L290 TraceCheckUtils]: 72: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,283 INFO L290 TraceCheckUtils]: 71: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,283 INFO L272 TraceCheckUtils]: 70: Hoare triple {79340#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,287 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {79039#true} {79340#(< ~counter~0 99)} #102#return; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,288 INFO L290 TraceCheckUtils]: 68: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,288 INFO L290 TraceCheckUtils]: 67: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,288 INFO L290 TraceCheckUtils]: 66: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,288 INFO L272 TraceCheckUtils]: 65: Hoare triple {79340#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,289 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {79039#true} {79340#(< ~counter~0 99)} #100#return; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,289 INFO L290 TraceCheckUtils]: 63: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,289 INFO L290 TraceCheckUtils]: 62: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,289 INFO L290 TraceCheckUtils]: 61: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,289 INFO L272 TraceCheckUtils]: 60: Hoare triple {79340#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,290 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {79039#true} {79340#(< ~counter~0 99)} #98#return; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,290 INFO L290 TraceCheckUtils]: 58: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,290 INFO L290 TraceCheckUtils]: 57: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,290 INFO L290 TraceCheckUtils]: 56: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,290 INFO L272 TraceCheckUtils]: 55: Hoare triple {79340#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,291 INFO L290 TraceCheckUtils]: 54: Hoare triple {79340#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,291 INFO L290 TraceCheckUtils]: 53: Hoare triple {79413#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79340#(< ~counter~0 99)} is VALID [2022-04-28 05:53:45,292 INFO L290 TraceCheckUtils]: 52: Hoare triple {79413#(< ~counter~0 98)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,292 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {79039#true} {79413#(< ~counter~0 98)} #104#return; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,292 INFO L290 TraceCheckUtils]: 50: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,292 INFO L290 TraceCheckUtils]: 49: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,292 INFO L290 TraceCheckUtils]: 48: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,292 INFO L272 TraceCheckUtils]: 47: Hoare triple {79413#(< ~counter~0 98)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,293 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {79039#true} {79413#(< ~counter~0 98)} #102#return; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,293 INFO L290 TraceCheckUtils]: 45: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,293 INFO L290 TraceCheckUtils]: 44: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,293 INFO L290 TraceCheckUtils]: 43: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,293 INFO L272 TraceCheckUtils]: 42: Hoare triple {79413#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,294 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {79039#true} {79413#(< ~counter~0 98)} #100#return; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,294 INFO L290 TraceCheckUtils]: 40: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,294 INFO L290 TraceCheckUtils]: 39: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,294 INFO L290 TraceCheckUtils]: 38: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,294 INFO L272 TraceCheckUtils]: 37: Hoare triple {79413#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,295 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {79039#true} {79413#(< ~counter~0 98)} #98#return; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,295 INFO L290 TraceCheckUtils]: 35: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,295 INFO L290 TraceCheckUtils]: 34: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,295 INFO L290 TraceCheckUtils]: 33: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,295 INFO L272 TraceCheckUtils]: 32: Hoare triple {79413#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,295 INFO L290 TraceCheckUtils]: 31: Hoare triple {79413#(< ~counter~0 98)} assume !!(#t~post8 < 100);havoc #t~post8; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,296 INFO L290 TraceCheckUtils]: 30: Hoare triple {79483#(< ~counter~0 97)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {79413#(< ~counter~0 98)} is VALID [2022-04-28 05:53:45,296 INFO L290 TraceCheckUtils]: 29: Hoare triple {79483#(< ~counter~0 97)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {79483#(< ~counter~0 97)} is VALID [2022-04-28 05:53:45,296 INFO L290 TraceCheckUtils]: 28: Hoare triple {79483#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {79483#(< ~counter~0 97)} is VALID [2022-04-28 05:53:45,297 INFO L290 TraceCheckUtils]: 27: Hoare triple {79493#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79483#(< ~counter~0 97)} is VALID [2022-04-28 05:53:45,297 INFO L290 TraceCheckUtils]: 26: Hoare triple {79493#(< ~counter~0 96)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79493#(< ~counter~0 96)} is VALID [2022-04-28 05:53:45,298 INFO L290 TraceCheckUtils]: 25: Hoare triple {79493#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {79493#(< ~counter~0 96)} is VALID [2022-04-28 05:53:45,298 INFO L290 TraceCheckUtils]: 24: Hoare triple {79503#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79493#(< ~counter~0 96)} is VALID [2022-04-28 05:53:45,299 INFO L290 TraceCheckUtils]: 23: Hoare triple {79503#(< ~counter~0 95)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {79503#(< ~counter~0 95)} is VALID [2022-04-28 05:53:45,299 INFO L290 TraceCheckUtils]: 22: Hoare triple {79503#(< ~counter~0 95)} assume !(~c~0 >= ~b~0); {79503#(< ~counter~0 95)} is VALID [2022-04-28 05:53:45,299 INFO L290 TraceCheckUtils]: 21: Hoare triple {79503#(< ~counter~0 95)} assume !!(#t~post7 < 100);havoc #t~post7; {79503#(< ~counter~0 95)} is VALID [2022-04-28 05:53:45,300 INFO L290 TraceCheckUtils]: 20: Hoare triple {79516#(< ~counter~0 94)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {79503#(< ~counter~0 95)} is VALID [2022-04-28 05:53:45,300 INFO L290 TraceCheckUtils]: 19: Hoare triple {79516#(< ~counter~0 94)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {79516#(< ~counter~0 94)} is VALID [2022-04-28 05:53:45,300 INFO L290 TraceCheckUtils]: 18: Hoare triple {79516#(< ~counter~0 94)} assume !!(#t~post6 < 100);havoc #t~post6; {79516#(< ~counter~0 94)} is VALID [2022-04-28 05:53:45,301 INFO L290 TraceCheckUtils]: 17: Hoare triple {79526#(< ~counter~0 93)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {79516#(< ~counter~0 94)} is VALID [2022-04-28 05:53:45,301 INFO L290 TraceCheckUtils]: 16: Hoare triple {79526#(< ~counter~0 93)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,302 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {79039#true} {79526#(< ~counter~0 93)} #96#return; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,302 INFO L290 TraceCheckUtils]: 14: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,302 INFO L290 TraceCheckUtils]: 13: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,302 INFO L290 TraceCheckUtils]: 12: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,302 INFO L272 TraceCheckUtils]: 11: Hoare triple {79526#(< ~counter~0 93)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,303 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {79039#true} {79526#(< ~counter~0 93)} #94#return; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,303 INFO L290 TraceCheckUtils]: 9: Hoare triple {79039#true} assume true; {79039#true} is VALID [2022-04-28 05:53:45,303 INFO L290 TraceCheckUtils]: 8: Hoare triple {79039#true} assume !(0 == ~cond); {79039#true} is VALID [2022-04-28 05:53:45,303 INFO L290 TraceCheckUtils]: 7: Hoare triple {79039#true} ~cond := #in~cond; {79039#true} is VALID [2022-04-28 05:53:45,303 INFO L272 TraceCheckUtils]: 6: Hoare triple {79526#(< ~counter~0 93)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {79039#true} is VALID [2022-04-28 05:53:45,303 INFO L290 TraceCheckUtils]: 5: Hoare triple {79526#(< ~counter~0 93)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,303 INFO L272 TraceCheckUtils]: 4: Hoare triple {79526#(< ~counter~0 93)} call #t~ret9 := main(); {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,304 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79526#(< ~counter~0 93)} {79039#true} #108#return; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,304 INFO L290 TraceCheckUtils]: 2: Hoare triple {79526#(< ~counter~0 93)} assume true; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {79039#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {79526#(< ~counter~0 93)} is VALID [2022-04-28 05:53:45,305 INFO L272 TraceCheckUtils]: 0: Hoare triple {79039#true} call ULTIMATE.init(); {79039#true} is VALID [2022-04-28 05:53:45,305 INFO L134 CoverageAnalysis]: Checked inductivity of 156 backedges. 16 proven. 24 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:53:45,305 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:53:45,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [169882388] [2022-04-28 05:53:45,305 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:53:45,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [842694968] [2022-04-28 05:53:45,305 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [842694968] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:53:45,305 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:53:45,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 20 [2022-04-28 05:53:45,306 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:53:45,306 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1085974251] [2022-04-28 05:53:45,306 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1085974251] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:53:45,306 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:53:45,306 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 05:53:45,306 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [748199196] [2022-04-28 05:53:45,306 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:53:45,306 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 05:53:45,307 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:53:45,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:45,360 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:45,360 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 05:53:45,361 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:45,361 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 05:53:45,361 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=222, Unknown=0, NotChecked=0, Total=380 [2022-04-28 05:53:45,361 INFO L87 Difference]: Start difference. First operand 957 states and 1272 transitions. Second operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:48,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:48,411 INFO L93 Difference]: Finished difference Result 966 states and 1279 transitions. [2022-04-28 05:53:48,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 05:53:48,412 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 87 [2022-04-28 05:53:48,412 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:53:48,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:48,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 05:53:48,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:48,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 180 transitions. [2022-04-28 05:53:48,415 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 180 transitions. [2022-04-28 05:53:48,595 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 180 edges. 180 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:48,634 INFO L225 Difference]: With dead ends: 966 [2022-04-28 05:53:48,634 INFO L226 Difference]: Without dead ends: 959 [2022-04-28 05:53:48,634 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 178 GetRequests, 155 SyntacticMatches, 0 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=246, Invalid=354, Unknown=0, NotChecked=0, Total=600 [2022-04-28 05:53:48,635 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 104 mSDsluCounter, 217 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 104 SdHoareTripleChecker+Valid, 282 SdHoareTripleChecker+Invalid, 178 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:53:48,635 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [104 Valid, 282 Invalid, 178 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:53:48,636 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 959 states. [2022-04-28 05:53:51,105 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 959 to 957. [2022-04-28 05:53:51,105 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:53:51,107 INFO L82 GeneralOperation]: Start isEquivalent. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:51,107 INFO L74 IsIncluded]: Start isIncluded. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:51,108 INFO L87 Difference]: Start difference. First operand 959 states. Second operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:51,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:51,143 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 05:53:51,143 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 05:53:51,145 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:51,145 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:51,146 INFO L74 IsIncluded]: Start isIncluded. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 05:53:51,147 INFO L87 Difference]: Start difference. First operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) Second operand 959 states. [2022-04-28 05:53:51,184 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:53:51,184 INFO L93 Difference]: Finished difference Result 959 states and 1271 transitions. [2022-04-28 05:53:51,184 INFO L276 IsEmpty]: Start isEmpty. Operand 959 states and 1271 transitions. [2022-04-28 05:53:51,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:53:51,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:53:51,186 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:53:51,186 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:53:51,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 957 states, 679 states have (on average 1.2665684830633284) internal successors, (860), 689 states have internal predecessors, (860), 207 states have call successors, (207), 71 states have call predecessors, (207), 70 states have return successors, (203), 196 states have call predecessors, (203), 203 states have call successors, (203) [2022-04-28 05:53:51,240 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 957 states to 957 states and 1270 transitions. [2022-04-28 05:53:51,240 INFO L78 Accepts]: Start accepts. Automaton has 957 states and 1270 transitions. Word has length 87 [2022-04-28 05:53:51,240 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:53:51,241 INFO L495 AbstractCegarLoop]: Abstraction has 957 states and 1270 transitions. [2022-04-28 05:53:51,241 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.8181818181818183) internal successors, (42), 10 states have internal predecessors, (42), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:53:51,241 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 957 states and 1270 transitions. [2022-04-28 05:53:53,711 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1270 edges. 1270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:53:53,711 INFO L276 IsEmpty]: Start isEmpty. Operand 957 states and 1270 transitions. [2022-04-28 05:53:53,711 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-04-28 05:53:53,712 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:53:53,712 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:53:53,728 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 05:53:53,912 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 05:53:53,912 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:53:53,912 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:53:53,913 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 3 times [2022-04-28 05:53:53,913 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:53:53,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2015914089] [2022-04-28 05:53:53,913 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:53:53,913 INFO L85 PathProgramCache]: Analyzing trace with hash -1082523945, now seen corresponding path program 4 times [2022-04-28 05:53:53,913 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:53:53,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1284480734] [2022-04-28 05:53:53,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:53:53,913 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:53:53,923 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:53:53,924 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [925897368] [2022-04-28 05:53:53,924 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 05:53:53,924 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:53:53,924 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:53:53,925 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 05:53:53,927 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 05:53:53,977 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 05:53:53,978 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:53:53,979 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 80 conjunts are in the unsatisfiable core [2022-04-28 05:53:53,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:53:54,000 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:53:55,242 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 05:53:55,243 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,244 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,244 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,244 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,244 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 05:53:55,244 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,245 INFO L290 TraceCheckUtils]: 17: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,245 INFO L290 TraceCheckUtils]: 18: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,245 INFO L290 TraceCheckUtils]: 19: Hoare triple {85407#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,246 INFO L290 TraceCheckUtils]: 20: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,246 INFO L290 TraceCheckUtils]: 21: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,247 INFO L290 TraceCheckUtils]: 22: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,247 INFO L290 TraceCheckUtils]: 23: Hoare triple {85417#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,248 INFO L290 TraceCheckUtils]: 24: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,248 INFO L290 TraceCheckUtils]: 25: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,248 INFO L290 TraceCheckUtils]: 26: Hoare triple {85430#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,249 INFO L290 TraceCheckUtils]: 27: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,249 INFO L290 TraceCheckUtils]: 28: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,250 INFO L290 TraceCheckUtils]: 29: Hoare triple {85440#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~q~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,250 INFO L290 TraceCheckUtils]: 30: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,250 INFO L290 TraceCheckUtils]: 31: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,251 INFO L272 TraceCheckUtils]: 32: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,251 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,251 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,251 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,252 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #98#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,252 INFO L272 TraceCheckUtils]: 37: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,252 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,252 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,252 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,253 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #100#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,253 INFO L272 TraceCheckUtils]: 42: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,253 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,253 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,253 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,254 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #102#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,254 INFO L272 TraceCheckUtils]: 47: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,254 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,254 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,254 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,255 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} #104#return; {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,255 INFO L290 TraceCheckUtils]: 52: Hoare triple {85450#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1) (= main_~q~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,256 INFO L290 TraceCheckUtils]: 53: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,256 INFO L290 TraceCheckUtils]: 54: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} is VALID [2022-04-28 05:53:55,256 INFO L272 TraceCheckUtils]: 55: Hoare triple {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,257 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:55,257 INFO L290 TraceCheckUtils]: 57: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,257 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,258 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85520#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1))} #98#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,258 INFO L272 TraceCheckUtils]: 60: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,258 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:55,259 INFO L290 TraceCheckUtils]: 62: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,259 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,260 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,260 INFO L272 TraceCheckUtils]: 65: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,260 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:53:55,260 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:53:55,260 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:53:55,261 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,261 INFO L272 TraceCheckUtils]: 70: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:53:55,261 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:55,262 INFO L290 TraceCheckUtils]: 72: Hoare triple {85533#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,262 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:53:55,263 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,263 INFO L290 TraceCheckUtils]: 75: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,264 INFO L290 TraceCheckUtils]: 76: Hoare triple {85544#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~q~0 1) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,265 INFO L290 TraceCheckUtils]: 77: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,265 INFO L290 TraceCheckUtils]: 78: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,266 INFO L290 TraceCheckUtils]: 79: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 05:53:55,266 INFO L290 TraceCheckUtils]: 80: Hoare triple {85596#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 2) (= main_~q~0 1) (= (+ main_~c~0 (* main_~b~0 2)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,267 INFO L290 TraceCheckUtils]: 81: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,267 INFO L290 TraceCheckUtils]: 82: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,268 INFO L290 TraceCheckUtils]: 83: Hoare triple {85609#(and (= main_~r~0 0) (= main_~b~0 (+ main_~y~0 (* (- 2) main_~a~0))) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} assume !(0 != ~b~0); {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} is VALID [2022-04-28 05:53:55,268 INFO L272 TraceCheckUtils]: 84: Hoare triple {85619#(and (= main_~r~0 0) (= (+ main_~y~0 (* (- 2) main_~a~0)) 0) (= main_~s~0 1) (= main_~a~0 main_~x~0) (= (+ (* main_~p~0 2) main_~q~0) 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:53:55,269 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:53:55,269 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 05:53:55,269 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 05:53:55,270 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 52 proven. 35 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2022-04-28 05:53:55,270 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:07,270 INFO L290 TraceCheckUtils]: 87: Hoare triple {85355#false} assume !false; {85355#false} is VALID [2022-04-28 05:55:07,271 INFO L290 TraceCheckUtils]: 86: Hoare triple {85627#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {85355#false} is VALID [2022-04-28 05:55:07,271 INFO L290 TraceCheckUtils]: 85: Hoare triple {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {85627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:55:07,272 INFO L272 TraceCheckUtils]: 84: Hoare triple {85643#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {85623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:55:07,272 INFO L290 TraceCheckUtils]: 83: Hoare triple {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {85643#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:55:07,273 INFO L290 TraceCheckUtils]: 82: Hoare triple {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:55:07,273 INFO L290 TraceCheckUtils]: 81: Hoare triple {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:55:07,315 INFO L290 TraceCheckUtils]: 80: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85647#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:55:07,316 INFO L290 TraceCheckUtils]: 79: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,316 INFO L290 TraceCheckUtils]: 78: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,317 INFO L290 TraceCheckUtils]: 77: Hoare triple {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,358 INFO L290 TraceCheckUtils]: 76: Hoare triple {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {85657#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,359 INFO L290 TraceCheckUtils]: 75: Hoare triple {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,360 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {85670#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,360 INFO L290 TraceCheckUtils]: 73: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:07,360 INFO L290 TraceCheckUtils]: 72: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:07,361 INFO L290 TraceCheckUtils]: 71: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:07,361 INFO L272 TraceCheckUtils]: 70: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:07,361 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {85354#true} {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,362 INFO L290 TraceCheckUtils]: 68: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:07,362 INFO L290 TraceCheckUtils]: 67: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:07,362 INFO L290 TraceCheckUtils]: 66: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:07,362 INFO L272 TraceCheckUtils]: 65: Hoare triple {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:07,363 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85709#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {85677#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,363 INFO L290 TraceCheckUtils]: 63: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:07,363 INFO L290 TraceCheckUtils]: 62: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:07,364 INFO L290 TraceCheckUtils]: 61: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:07,364 INFO L272 TraceCheckUtils]: 60: Hoare triple {85709#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:07,365 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {85709#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,365 INFO L290 TraceCheckUtils]: 58: Hoare triple {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:07,365 INFO L290 TraceCheckUtils]: 57: Hoare triple {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {85537#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:55:07,366 INFO L290 TraceCheckUtils]: 56: Hoare triple {85354#true} ~cond := #in~cond; {85687#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:55:07,366 INFO L272 TraceCheckUtils]: 55: Hoare triple {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:07,366 INFO L290 TraceCheckUtils]: 54: Hoare triple {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:07,367 INFO L290 TraceCheckUtils]: 53: Hoare triple {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:08,428 INFO L290 TraceCheckUtils]: 52: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {85725#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:55:08,429 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #104#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,429 INFO L290 TraceCheckUtils]: 50: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,429 INFO L290 TraceCheckUtils]: 49: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:08,429 INFO L290 TraceCheckUtils]: 48: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:08,429 INFO L272 TraceCheckUtils]: 47: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:08,430 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #102#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,430 INFO L290 TraceCheckUtils]: 45: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,430 INFO L290 TraceCheckUtils]: 44: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:08,430 INFO L290 TraceCheckUtils]: 43: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:08,430 INFO L272 TraceCheckUtils]: 42: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:08,431 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #100#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,431 INFO L290 TraceCheckUtils]: 40: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,431 INFO L290 TraceCheckUtils]: 39: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:08,431 INFO L290 TraceCheckUtils]: 38: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:08,431 INFO L272 TraceCheckUtils]: 37: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:08,432 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {85354#true} {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #98#return; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,432 INFO L290 TraceCheckUtils]: 35: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,432 INFO L290 TraceCheckUtils]: 34: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:08,432 INFO L290 TraceCheckUtils]: 33: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:08,432 INFO L272 TraceCheckUtils]: 32: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:08,433 INFO L290 TraceCheckUtils]: 31: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,434 INFO L290 TraceCheckUtils]: 30: Hoare triple {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,434 INFO L290 TraceCheckUtils]: 29: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {85747#(or (not (= (* main_~v~0 2) main_~c~0)) (not (= main_~c~0 (* main_~b~0 (* main_~d~0 2)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ (* main_~y~0 (+ (* (- 1) (* (+ main_~k~0 (* main_~d~0 2)) main_~s~0)) main_~r~0)) main_~b~0 (* (+ main_~p~0 (* (- 1) (+ main_~k~0 (* main_~d~0 2)) main_~q~0)) main_~x~0))))} is VALID [2022-04-28 05:55:08,435 INFO L290 TraceCheckUtils]: 28: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} assume !!(#t~post7 < 100);havoc #t~post7; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:55:08,435 INFO L290 TraceCheckUtils]: 27: Hoare triple {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 26: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85817#(or (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~c~0 (* main_~b~0 2))) (= (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)) (+ main_~b~0 (* main_~y~0 (+ (* (* (+ main_~k~0 2) main_~s~0) (- 1)) main_~r~0)) (* main_~x~0 (+ main_~p~0 (* (- 1) (+ main_~k~0 2) main_~q~0))))))} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 25: Hoare triple {85354#true} assume !!(#t~post6 < 100);havoc #t~post6; {85354#true} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 24: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 23: Hoare triple {85354#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {85354#true} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 22: Hoare triple {85354#true} assume !(~c~0 >= ~b~0); {85354#true} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {85354#true} assume !!(#t~post7 < 100);havoc #t~post7; {85354#true} is VALID [2022-04-28 05:55:08,437 INFO L290 TraceCheckUtils]: 20: Hoare triple {85354#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {85354#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {85354#true} assume !!(#t~post6 < 100);havoc #t~post6; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {85354#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {85354#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {85354#true} {85354#true} #96#return; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 12: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L272 TraceCheckUtils]: 11: Hoare triple {85354#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {85354#true} {85354#true} #94#return; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {85354#true} assume !(0 == ~cond); {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 7: Hoare triple {85354#true} ~cond := #in~cond; {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L272 TraceCheckUtils]: 6: Hoare triple {85354#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {85354#true} is VALID [2022-04-28 05:55:08,438 INFO L290 TraceCheckUtils]: 5: Hoare triple {85354#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {85354#true} is VALID [2022-04-28 05:55:08,439 INFO L272 TraceCheckUtils]: 4: Hoare triple {85354#true} call #t~ret9 := main(); {85354#true} is VALID [2022-04-28 05:55:08,439 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {85354#true} {85354#true} #108#return; {85354#true} is VALID [2022-04-28 05:55:08,439 INFO L290 TraceCheckUtils]: 2: Hoare triple {85354#true} assume true; {85354#true} is VALID [2022-04-28 05:55:08,439 INFO L290 TraceCheckUtils]: 1: Hoare triple {85354#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {85354#true} is VALID [2022-04-28 05:55:08,439 INFO L272 TraceCheckUtils]: 0: Hoare triple {85354#true} call ULTIMATE.init(); {85354#true} is VALID [2022-04-28 05:55:08,439 INFO L134 CoverageAnalysis]: Checked inductivity of 158 backedges. 65 proven. 19 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2022-04-28 05:55:08,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:08,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1284480734] [2022-04-28 05:55:08,440 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:08,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [925897368] [2022-04-28 05:55:08,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [925897368] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:08,440 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:08,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 15] total 26 [2022-04-28 05:55:08,440 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:08,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2015914089] [2022-04-28 05:55:08,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2015914089] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:08,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:08,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:55:08,440 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1864983857] [2022-04-28 05:55:08,440 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:08,441 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 05:55:08,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:08,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:08,512 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 05:55:08,513 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:55:08,513 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:08,513 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:55:08,513 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=113, Invalid=537, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:55:08,513 INFO L87 Difference]: Start difference. First operand 957 states and 1270 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:14,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:14,912 INFO L93 Difference]: Finished difference Result 1073 states and 1433 transitions. [2022-04-28 05:55:14,912 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 05:55:14,912 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 88 [2022-04-28 05:55:14,913 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:14,913 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:14,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 05:55:14,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:14,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 202 transitions. [2022-04-28 05:55:14,916 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 202 transitions. [2022-04-28 05:55:15,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 202 edges. 202 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:15,230 INFO L225 Difference]: With dead ends: 1073 [2022-04-28 05:55:15,230 INFO L226 Difference]: Without dead ends: 1070 [2022-04-28 05:55:15,230 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 180 GetRequests, 150 SyntacticMatches, 1 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 150 ImplicationChecksByTransitivity, 1.8s TimeCoverageRelationStatistics Valid=154, Invalid=776, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:55:15,231 INFO L413 NwaCegarLoop]: 75 mSDtfsCounter, 91 mSDsluCounter, 551 mSDsCounter, 0 mSdLazyCounter, 1071 mSolverCounterSat, 75 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 626 SdHoareTripleChecker+Invalid, 1146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 75 IncrementalHoareTripleChecker+Valid, 1071 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:15,231 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [111 Valid, 626 Invalid, 1146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [75 Valid, 1071 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-28 05:55:15,231 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1070 states. [2022-04-28 05:55:17,749 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1070 to 1027. [2022-04-28 05:55:17,749 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:17,751 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:17,751 INFO L74 IsIncluded]: Start isIncluded. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:17,752 INFO L87 Difference]: Start difference. First operand 1070 states. Second operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:17,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:17,786 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 05:55:17,786 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 05:55:17,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:17,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:17,788 INFO L74 IsIncluded]: Start isIncluded. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 05:55:17,789 INFO L87 Difference]: Start difference. First operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1070 states. [2022-04-28 05:55:17,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:17,824 INFO L93 Difference]: Finished difference Result 1070 states and 1428 transitions. [2022-04-28 05:55:17,824 INFO L276 IsEmpty]: Start isEmpty. Operand 1070 states and 1428 transitions. [2022-04-28 05:55:17,825 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:17,825 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:17,825 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:17,825 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:17,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1027 states, 723 states have (on average 1.2738589211618256) internal successors, (921), 734 states have internal predecessors, (921), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:17,872 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1027 states to 1027 states and 1375 transitions. [2022-04-28 05:55:17,872 INFO L78 Accepts]: Start accepts. Automaton has 1027 states and 1375 transitions. Word has length 88 [2022-04-28 05:55:17,872 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:17,873 INFO L495 AbstractCegarLoop]: Abstraction has 1027 states and 1375 transitions. [2022-04-28 05:55:17,873 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 5 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:17,873 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1027 states and 1375 transitions. [2022-04-28 05:55:20,573 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1375 edges. 1375 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:20,574 INFO L276 IsEmpty]: Start isEmpty. Operand 1027 states and 1375 transitions. [2022-04-28 05:55:20,574 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-28 05:55:20,574 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:20,575 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:20,591 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 05:55:20,779 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 05:55:20,779 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:20,779 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:20,780 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 5 times [2022-04-28 05:55:20,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:20,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1477858225] [2022-04-28 05:55:20,780 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:20,780 INFO L85 PathProgramCache]: Analyzing trace with hash 1791236545, now seen corresponding path program 6 times [2022-04-28 05:55:20,780 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:20,780 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1442809259] [2022-04-28 05:55:20,780 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:20,780 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:20,791 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:20,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [820020719] [2022-04-28 05:55:20,792 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:55:20,792 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:20,792 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:20,793 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 05:55:20,797 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 05:55:20,875 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:55:20,875 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:20,877 INFO L263 TraceCheckSpWp]: Trace formula consists of 271 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:55:20,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:20,897 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:21,326 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 05:55:21,326 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,326 INFO L290 TraceCheckUtils]: 2: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,327 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92265#(<= ~counter~0 0)} {92257#true} #108#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,327 INFO L272 TraceCheckUtils]: 4: Hoare triple {92265#(<= ~counter~0 0)} call #t~ret9 := main(); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,327 INFO L290 TraceCheckUtils]: 5: Hoare triple {92265#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,328 INFO L272 TraceCheckUtils]: 6: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,328 INFO L290 TraceCheckUtils]: 7: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,328 INFO L290 TraceCheckUtils]: 8: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,329 INFO L290 TraceCheckUtils]: 9: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,329 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #94#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,329 INFO L272 TraceCheckUtils]: 11: Hoare triple {92265#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,330 INFO L290 TraceCheckUtils]: 12: Hoare triple {92265#(<= ~counter~0 0)} ~cond := #in~cond; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,330 INFO L290 TraceCheckUtils]: 13: Hoare triple {92265#(<= ~counter~0 0)} assume !(0 == ~cond); {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,330 INFO L290 TraceCheckUtils]: 14: Hoare triple {92265#(<= ~counter~0 0)} assume true; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,331 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92265#(<= ~counter~0 0)} {92265#(<= ~counter~0 0)} #96#return; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,331 INFO L290 TraceCheckUtils]: 16: Hoare triple {92265#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92265#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:21,332 INFO L290 TraceCheckUtils]: 17: Hoare triple {92265#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:21,333 INFO L290 TraceCheckUtils]: 18: Hoare triple {92314#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:21,333 INFO L290 TraceCheckUtils]: 19: Hoare triple {92314#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92314#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:21,334 INFO L290 TraceCheckUtils]: 20: Hoare triple {92314#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:21,334 INFO L290 TraceCheckUtils]: 21: Hoare triple {92324#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:21,334 INFO L290 TraceCheckUtils]: 22: Hoare triple {92324#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92324#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:21,335 INFO L290 TraceCheckUtils]: 23: Hoare triple {92324#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,335 INFO L290 TraceCheckUtils]: 24: Hoare triple {92334#(<= ~counter~0 3)} assume !!(#t~post8 < 100);havoc #t~post8; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,336 INFO L272 TraceCheckUtils]: 25: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,336 INFO L290 TraceCheckUtils]: 26: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,336 INFO L290 TraceCheckUtils]: 27: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,337 INFO L290 TraceCheckUtils]: 28: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,337 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #98#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,338 INFO L272 TraceCheckUtils]: 30: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,338 INFO L290 TraceCheckUtils]: 31: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,338 INFO L290 TraceCheckUtils]: 32: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,339 INFO L290 TraceCheckUtils]: 33: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,339 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #100#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,340 INFO L272 TraceCheckUtils]: 35: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,340 INFO L290 TraceCheckUtils]: 36: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,340 INFO L290 TraceCheckUtils]: 37: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,341 INFO L290 TraceCheckUtils]: 38: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,341 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #102#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,342 INFO L272 TraceCheckUtils]: 40: Hoare triple {92334#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,342 INFO L290 TraceCheckUtils]: 41: Hoare triple {92334#(<= ~counter~0 3)} ~cond := #in~cond; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,342 INFO L290 TraceCheckUtils]: 42: Hoare triple {92334#(<= ~counter~0 3)} assume !(0 == ~cond); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,342 INFO L290 TraceCheckUtils]: 43: Hoare triple {92334#(<= ~counter~0 3)} assume true; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,343 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92334#(<= ~counter~0 3)} {92334#(<= ~counter~0 3)} #104#return; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,343 INFO L290 TraceCheckUtils]: 45: Hoare triple {92334#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,343 INFO L290 TraceCheckUtils]: 46: Hoare triple {92334#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92334#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:21,344 INFO L290 TraceCheckUtils]: 47: Hoare triple {92334#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:21,344 INFO L290 TraceCheckUtils]: 48: Hoare triple {92407#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:21,345 INFO L290 TraceCheckUtils]: 49: Hoare triple {92407#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:21,345 INFO L290 TraceCheckUtils]: 50: Hoare triple {92407#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92407#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:21,346 INFO L290 TraceCheckUtils]: 51: Hoare triple {92407#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:21,346 INFO L290 TraceCheckUtils]: 52: Hoare triple {92420#(<= ~counter~0 5)} assume !!(#t~post6 < 100);havoc #t~post6; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:21,346 INFO L290 TraceCheckUtils]: 53: Hoare triple {92420#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92420#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:21,347 INFO L290 TraceCheckUtils]: 54: Hoare triple {92420#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:21,347 INFO L290 TraceCheckUtils]: 55: Hoare triple {92430#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:21,348 INFO L290 TraceCheckUtils]: 56: Hoare triple {92430#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92430#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:21,348 INFO L290 TraceCheckUtils]: 57: Hoare triple {92430#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,349 INFO L290 TraceCheckUtils]: 58: Hoare triple {92440#(<= ~counter~0 7)} assume !!(#t~post8 < 100);havoc #t~post8; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,349 INFO L272 TraceCheckUtils]: 59: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,349 INFO L290 TraceCheckUtils]: 60: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,350 INFO L290 TraceCheckUtils]: 61: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,350 INFO L290 TraceCheckUtils]: 62: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,351 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #98#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,351 INFO L272 TraceCheckUtils]: 64: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,351 INFO L290 TraceCheckUtils]: 65: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,352 INFO L290 TraceCheckUtils]: 66: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,352 INFO L290 TraceCheckUtils]: 67: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,352 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #100#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,353 INFO L272 TraceCheckUtils]: 69: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,353 INFO L290 TraceCheckUtils]: 70: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,354 INFO L290 TraceCheckUtils]: 71: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,354 INFO L290 TraceCheckUtils]: 72: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,354 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #102#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,355 INFO L272 TraceCheckUtils]: 74: Hoare triple {92440#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,355 INFO L290 TraceCheckUtils]: 75: Hoare triple {92440#(<= ~counter~0 7)} ~cond := #in~cond; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,355 INFO L290 TraceCheckUtils]: 76: Hoare triple {92440#(<= ~counter~0 7)} assume !(0 == ~cond); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,356 INFO L290 TraceCheckUtils]: 77: Hoare triple {92440#(<= ~counter~0 7)} assume true; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,356 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92440#(<= ~counter~0 7)} {92440#(<= ~counter~0 7)} #104#return; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,356 INFO L290 TraceCheckUtils]: 79: Hoare triple {92440#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,357 INFO L290 TraceCheckUtils]: 80: Hoare triple {92440#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92440#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:21,357 INFO L290 TraceCheckUtils]: 81: Hoare triple {92440#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:21,358 INFO L290 TraceCheckUtils]: 82: Hoare triple {92513#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:21,358 INFO L290 TraceCheckUtils]: 83: Hoare triple {92513#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:21,358 INFO L290 TraceCheckUtils]: 84: Hoare triple {92513#(<= ~counter~0 8)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {92513#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:21,359 INFO L290 TraceCheckUtils]: 85: Hoare triple {92513#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92526#(<= |main_#t~post6| 8)} is VALID [2022-04-28 05:55:21,359 INFO L290 TraceCheckUtils]: 86: Hoare triple {92526#(<= |main_#t~post6| 8)} assume !(#t~post6 < 100);havoc #t~post6; {92258#false} is VALID [2022-04-28 05:55:21,359 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {92258#false} is VALID [2022-04-28 05:55:21,359 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 05:55:21,359 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 05:55:21,359 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 05:55:21,360 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 98 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:21,360 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:21,837 INFO L290 TraceCheckUtils]: 90: Hoare triple {92258#false} assume !false; {92258#false} is VALID [2022-04-28 05:55:21,838 INFO L290 TraceCheckUtils]: 89: Hoare triple {92258#false} assume 0 == ~cond; {92258#false} is VALID [2022-04-28 05:55:21,838 INFO L290 TraceCheckUtils]: 88: Hoare triple {92258#false} ~cond := #in~cond; {92258#false} is VALID [2022-04-28 05:55:21,838 INFO L272 TraceCheckUtils]: 87: Hoare triple {92258#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {92258#false} is VALID [2022-04-28 05:55:21,838 INFO L290 TraceCheckUtils]: 86: Hoare triple {92554#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {92258#false} is VALID [2022-04-28 05:55:21,838 INFO L290 TraceCheckUtils]: 85: Hoare triple {92558#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92554#(< |main_#t~post6| 100)} is VALID [2022-04-28 05:55:21,839 INFO L290 TraceCheckUtils]: 84: Hoare triple {92558#(< ~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; {92558#(< ~counter~0 100)} is VALID [2022-04-28 05:55:21,839 INFO L290 TraceCheckUtils]: 83: Hoare triple {92558#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {92558#(< ~counter~0 100)} is VALID [2022-04-28 05:55:21,839 INFO L290 TraceCheckUtils]: 82: Hoare triple {92558#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {92558#(< ~counter~0 100)} is VALID [2022-04-28 05:55:21,841 INFO L290 TraceCheckUtils]: 81: Hoare triple {92571#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92558#(< ~counter~0 100)} is VALID [2022-04-28 05:55:21,841 INFO L290 TraceCheckUtils]: 80: Hoare triple {92571#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,841 INFO L290 TraceCheckUtils]: 79: Hoare triple {92571#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,842 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {92257#true} {92571#(< ~counter~0 99)} #104#return; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,842 INFO L290 TraceCheckUtils]: 77: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,842 INFO L290 TraceCheckUtils]: 76: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,842 INFO L290 TraceCheckUtils]: 75: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,842 INFO L272 TraceCheckUtils]: 74: Hoare triple {92571#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,843 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {92257#true} {92571#(< ~counter~0 99)} #102#return; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,843 INFO L290 TraceCheckUtils]: 72: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,843 INFO L290 TraceCheckUtils]: 71: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,843 INFO L290 TraceCheckUtils]: 70: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,843 INFO L272 TraceCheckUtils]: 69: Hoare triple {92571#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,843 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {92257#true} {92571#(< ~counter~0 99)} #100#return; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,844 INFO L290 TraceCheckUtils]: 67: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,844 INFO L290 TraceCheckUtils]: 66: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,844 INFO L290 TraceCheckUtils]: 65: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,844 INFO L272 TraceCheckUtils]: 64: Hoare triple {92571#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,860 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {92257#true} {92571#(< ~counter~0 99)} #98#return; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,860 INFO L290 TraceCheckUtils]: 62: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,860 INFO L290 TraceCheckUtils]: 61: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,860 INFO L290 TraceCheckUtils]: 60: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,860 INFO L272 TraceCheckUtils]: 59: Hoare triple {92571#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,861 INFO L290 TraceCheckUtils]: 58: Hoare triple {92571#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,862 INFO L290 TraceCheckUtils]: 57: Hoare triple {92644#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92571#(< ~counter~0 99)} is VALID [2022-04-28 05:55:21,863 INFO L290 TraceCheckUtils]: 56: Hoare triple {92644#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92644#(< ~counter~0 98)} is VALID [2022-04-28 05:55:21,863 INFO L290 TraceCheckUtils]: 55: Hoare triple {92644#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {92644#(< ~counter~0 98)} is VALID [2022-04-28 05:55:21,864 INFO L290 TraceCheckUtils]: 54: Hoare triple {92654#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92644#(< ~counter~0 98)} is VALID [2022-04-28 05:55:21,865 INFO L290 TraceCheckUtils]: 53: Hoare triple {92654#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92654#(< ~counter~0 97)} is VALID [2022-04-28 05:55:21,865 INFO L290 TraceCheckUtils]: 52: Hoare triple {92654#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {92654#(< ~counter~0 97)} is VALID [2022-04-28 05:55:21,866 INFO L290 TraceCheckUtils]: 51: Hoare triple {92664#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92654#(< ~counter~0 97)} is VALID [2022-04-28 05:55:21,867 INFO L290 TraceCheckUtils]: 50: Hoare triple {92664#(< ~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; {92664#(< ~counter~0 96)} is VALID [2022-04-28 05:55:21,867 INFO L290 TraceCheckUtils]: 49: Hoare triple {92664#(< ~counter~0 96)} assume !(~c~0 >= ~b~0); {92664#(< ~counter~0 96)} is VALID [2022-04-28 05:55:21,868 INFO L290 TraceCheckUtils]: 48: Hoare triple {92664#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {92664#(< ~counter~0 96)} is VALID [2022-04-28 05:55:21,869 INFO L290 TraceCheckUtils]: 47: Hoare triple {92677#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92664#(< ~counter~0 96)} is VALID [2022-04-28 05:55:21,869 INFO L290 TraceCheckUtils]: 46: Hoare triple {92677#(< ~counter~0 95)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,870 INFO L290 TraceCheckUtils]: 45: Hoare triple {92677#(< ~counter~0 95)} assume !(~c~0 >= 2 * ~v~0); {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,871 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {92257#true} {92677#(< ~counter~0 95)} #104#return; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,871 INFO L290 TraceCheckUtils]: 43: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,871 INFO L290 TraceCheckUtils]: 42: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,871 INFO L290 TraceCheckUtils]: 41: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,871 INFO L272 TraceCheckUtils]: 40: Hoare triple {92677#(< ~counter~0 95)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,872 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {92257#true} {92677#(< ~counter~0 95)} #102#return; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,872 INFO L290 TraceCheckUtils]: 38: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,872 INFO L290 TraceCheckUtils]: 37: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,872 INFO L290 TraceCheckUtils]: 36: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,872 INFO L272 TraceCheckUtils]: 35: Hoare triple {92677#(< ~counter~0 95)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,874 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {92257#true} {92677#(< ~counter~0 95)} #100#return; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,874 INFO L290 TraceCheckUtils]: 33: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,874 INFO L290 TraceCheckUtils]: 32: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,874 INFO L290 TraceCheckUtils]: 31: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,874 INFO L272 TraceCheckUtils]: 30: Hoare triple {92677#(< ~counter~0 95)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,875 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {92257#true} {92677#(< ~counter~0 95)} #98#return; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,875 INFO L290 TraceCheckUtils]: 28: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,875 INFO L290 TraceCheckUtils]: 27: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,875 INFO L290 TraceCheckUtils]: 26: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,875 INFO L272 TraceCheckUtils]: 25: Hoare triple {92677#(< ~counter~0 95)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,876 INFO L290 TraceCheckUtils]: 24: Hoare triple {92677#(< ~counter~0 95)} assume !!(#t~post8 < 100);havoc #t~post8; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,877 INFO L290 TraceCheckUtils]: 23: Hoare triple {92750#(< ~counter~0 94)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {92677#(< ~counter~0 95)} is VALID [2022-04-28 05:55:21,878 INFO L290 TraceCheckUtils]: 22: Hoare triple {92750#(< ~counter~0 94)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {92750#(< ~counter~0 94)} is VALID [2022-04-28 05:55:21,878 INFO L290 TraceCheckUtils]: 21: Hoare triple {92750#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {92750#(< ~counter~0 94)} is VALID [2022-04-28 05:55:21,879 INFO L290 TraceCheckUtils]: 20: Hoare triple {92760#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {92750#(< ~counter~0 94)} is VALID [2022-04-28 05:55:21,879 INFO L290 TraceCheckUtils]: 19: Hoare triple {92760#(< ~counter~0 93)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {92760#(< ~counter~0 93)} is VALID [2022-04-28 05:55:21,880 INFO L290 TraceCheckUtils]: 18: Hoare triple {92760#(< ~counter~0 93)} assume !!(#t~post6 < 100);havoc #t~post6; {92760#(< ~counter~0 93)} is VALID [2022-04-28 05:55:21,880 INFO L290 TraceCheckUtils]: 17: Hoare triple {92770#(< ~counter~0 92)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {92760#(< ~counter~0 93)} is VALID [2022-04-28 05:55:21,881 INFO L290 TraceCheckUtils]: 16: Hoare triple {92770#(< ~counter~0 92)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,881 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {92257#true} {92770#(< ~counter~0 92)} #96#return; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,881 INFO L290 TraceCheckUtils]: 14: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,881 INFO L290 TraceCheckUtils]: 13: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,881 INFO L290 TraceCheckUtils]: 12: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,881 INFO L272 TraceCheckUtils]: 11: Hoare triple {92770#(< ~counter~0 92)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,882 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92257#true} {92770#(< ~counter~0 92)} #94#return; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,882 INFO L290 TraceCheckUtils]: 9: Hoare triple {92257#true} assume true; {92257#true} is VALID [2022-04-28 05:55:21,882 INFO L290 TraceCheckUtils]: 8: Hoare triple {92257#true} assume !(0 == ~cond); {92257#true} is VALID [2022-04-28 05:55:21,882 INFO L290 TraceCheckUtils]: 7: Hoare triple {92257#true} ~cond := #in~cond; {92257#true} is VALID [2022-04-28 05:55:21,882 INFO L272 TraceCheckUtils]: 6: Hoare triple {92770#(< ~counter~0 92)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {92257#true} is VALID [2022-04-28 05:55:21,882 INFO L290 TraceCheckUtils]: 5: Hoare triple {92770#(< ~counter~0 92)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,883 INFO L272 TraceCheckUtils]: 4: Hoare triple {92770#(< ~counter~0 92)} call #t~ret9 := main(); {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,883 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92770#(< ~counter~0 92)} {92257#true} #108#return; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,883 INFO L290 TraceCheckUtils]: 2: Hoare triple {92770#(< ~counter~0 92)} assume true; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {92257#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {92770#(< ~counter~0 92)} is VALID [2022-04-28 05:55:21,884 INFO L272 TraceCheckUtils]: 0: Hoare triple {92257#true} call ULTIMATE.init(); {92257#true} is VALID [2022-04-28 05:55:21,884 INFO L134 CoverageAnalysis]: Checked inductivity of 166 backedges. 16 proven. 34 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:21,884 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:21,884 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1442809259] [2022-04-28 05:55:21,884 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:21,884 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [820020719] [2022-04-28 05:55:21,885 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [820020719] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:21,885 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:21,885 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:55:21,885 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:21,885 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1477858225] [2022-04-28 05:55:21,885 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1477858225] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:21,885 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:21,885 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:55:21,885 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1922016770] [2022-04-28 05:55:21,885 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:21,886 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 05:55:21,886 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:21,886 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:21,945 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 05:55:21,945 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:55:21,945 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:21,946 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:55:21,946 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:55:21,946 INFO L87 Difference]: Start difference. First operand 1027 states and 1375 transitions. Second operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:25,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:25,344 INFO L93 Difference]: Finished difference Result 1062 states and 1410 transitions. [2022-04-28 05:55:25,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:55:25,344 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 91 [2022-04-28 05:55:25,345 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:25,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:25,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 05:55:25,346 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:25,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 208 transitions. [2022-04-28 05:55:25,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 208 transitions. [2022-04-28 05:55:25,525 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:25,572 INFO L225 Difference]: With dead ends: 1062 [2022-04-28 05:55:25,572 INFO L226 Difference]: Without dead ends: 1055 [2022-04-28 05:55:25,573 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 187 GetRequests, 161 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=312, Invalid=444, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:55:25,573 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 157 mSDsluCounter, 227 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 101 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 157 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 220 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 101 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:25,573 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [157 Valid, 296 Invalid, 220 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [101 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:55:25,574 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1055 states. [2022-04-28 05:55:28,218 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1055 to 1038. [2022-04-28 05:55:28,218 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:28,219 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:28,220 INFO L74 IsIncluded]: Start isIncluded. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:28,220 INFO L87 Difference]: Start difference. First operand 1055 states. Second operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:28,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:28,255 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 05:55:28,255 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 05:55:28,256 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:28,256 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:28,257 INFO L74 IsIncluded]: Start isIncluded. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 05:55:28,258 INFO L87 Difference]: Start difference. First operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1055 states. [2022-04-28 05:55:28,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:28,293 INFO L93 Difference]: Finished difference Result 1055 states and 1401 transitions. [2022-04-28 05:55:28,293 INFO L276 IsEmpty]: Start isEmpty. Operand 1055 states and 1401 transitions. [2022-04-28 05:55:28,294 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:28,294 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:28,294 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:28,294 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:28,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1038 states, 734 states have (on average 1.2697547683923707) internal successors, (932), 745 states have internal predecessors, (932), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:28,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1038 states to 1038 states and 1386 transitions. [2022-04-28 05:55:28,357 INFO L78 Accepts]: Start accepts. Automaton has 1038 states and 1386 transitions. Word has length 91 [2022-04-28 05:55:28,357 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:28,357 INFO L495 AbstractCegarLoop]: Abstraction has 1038 states and 1386 transitions. [2022-04-28 05:55:28,357 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 3.8333333333333335) internal successors, (46), 11 states have internal predecessors, (46), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:28,357 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1038 states and 1386 transitions. [2022-04-28 05:55:31,120 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1386 edges. 1386 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:31,120 INFO L276 IsEmpty]: Start isEmpty. Operand 1038 states and 1386 transitions. [2022-04-28 05:55:31,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 94 [2022-04-28 05:55:31,121 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:31,121 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:31,137 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 05:55:31,323 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 05:55:31,323 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:31,324 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:31,324 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 1 times [2022-04-28 05:55:31,324 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:31,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1113082557] [2022-04-28 05:55:31,324 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:31,324 INFO L85 PathProgramCache]: Analyzing trace with hash -554609469, now seen corresponding path program 2 times [2022-04-28 05:55:31,324 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:31,324 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1920481710] [2022-04-28 05:55:31,325 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:31,325 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:31,337 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:31,337 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1593578772] [2022-04-28 05:55:31,337 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:55:31,337 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:31,337 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:31,338 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 05:55:31,343 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 05:55:31,401 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:55:31,402 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:31,403 INFO L263 TraceCheckSpWp]: Trace formula consists of 290 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 05:55:31,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:31,424 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:31,905 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 05:55:31,905 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,906 INFO L290 TraceCheckUtils]: 2: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,906 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99154#(<= ~counter~0 0)} {99146#true} #108#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,906 INFO L272 TraceCheckUtils]: 4: Hoare triple {99154#(<= ~counter~0 0)} call #t~ret9 := main(); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {99154#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,907 INFO L272 TraceCheckUtils]: 6: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,907 INFO L290 TraceCheckUtils]: 7: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,908 INFO L290 TraceCheckUtils]: 8: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,908 INFO L290 TraceCheckUtils]: 9: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,908 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #94#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,909 INFO L272 TraceCheckUtils]: 11: Hoare triple {99154#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,909 INFO L290 TraceCheckUtils]: 12: Hoare triple {99154#(<= ~counter~0 0)} ~cond := #in~cond; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,910 INFO L290 TraceCheckUtils]: 13: Hoare triple {99154#(<= ~counter~0 0)} assume !(0 == ~cond); {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,910 INFO L290 TraceCheckUtils]: 14: Hoare triple {99154#(<= ~counter~0 0)} assume true; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,910 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99154#(<= ~counter~0 0)} {99154#(<= ~counter~0 0)} #96#return; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,911 INFO L290 TraceCheckUtils]: 16: Hoare triple {99154#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99154#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:31,912 INFO L290 TraceCheckUtils]: 17: Hoare triple {99154#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:31,913 INFO L290 TraceCheckUtils]: 18: Hoare triple {99203#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:31,913 INFO L290 TraceCheckUtils]: 19: Hoare triple {99203#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99203#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:31,914 INFO L290 TraceCheckUtils]: 20: Hoare triple {99203#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:31,914 INFO L290 TraceCheckUtils]: 21: Hoare triple {99213#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:31,914 INFO L290 TraceCheckUtils]: 22: Hoare triple {99213#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:31,915 INFO L290 TraceCheckUtils]: 23: Hoare triple {99213#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99213#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:31,916 INFO L290 TraceCheckUtils]: 24: Hoare triple {99213#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:31,916 INFO L290 TraceCheckUtils]: 25: Hoare triple {99226#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:31,916 INFO L290 TraceCheckUtils]: 26: Hoare triple {99226#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99226#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:31,917 INFO L290 TraceCheckUtils]: 27: Hoare triple {99226#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:31,918 INFO L290 TraceCheckUtils]: 28: Hoare triple {99236#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:31,918 INFO L290 TraceCheckUtils]: 29: Hoare triple {99236#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99236#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:31,919 INFO L290 TraceCheckUtils]: 30: Hoare triple {99236#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,919 INFO L290 TraceCheckUtils]: 31: Hoare triple {99246#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,920 INFO L272 TraceCheckUtils]: 32: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,920 INFO L290 TraceCheckUtils]: 33: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,920 INFO L290 TraceCheckUtils]: 34: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,921 INFO L290 TraceCheckUtils]: 35: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,921 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #98#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,922 INFO L272 TraceCheckUtils]: 37: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,922 INFO L290 TraceCheckUtils]: 38: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,922 INFO L290 TraceCheckUtils]: 39: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,923 INFO L290 TraceCheckUtils]: 40: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,923 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #100#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,924 INFO L272 TraceCheckUtils]: 42: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,924 INFO L290 TraceCheckUtils]: 43: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,924 INFO L290 TraceCheckUtils]: 44: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,925 INFO L290 TraceCheckUtils]: 45: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,925 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #102#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,926 INFO L272 TraceCheckUtils]: 47: Hoare triple {99246#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,926 INFO L290 TraceCheckUtils]: 48: Hoare triple {99246#(<= ~counter~0 5)} ~cond := #in~cond; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,926 INFO L290 TraceCheckUtils]: 49: Hoare triple {99246#(<= ~counter~0 5)} assume !(0 == ~cond); {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,927 INFO L290 TraceCheckUtils]: 50: Hoare triple {99246#(<= ~counter~0 5)} assume true; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,927 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99246#(<= ~counter~0 5)} {99246#(<= ~counter~0 5)} #104#return; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,928 INFO L290 TraceCheckUtils]: 52: Hoare triple {99246#(<= ~counter~0 5)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99246#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:31,929 INFO L290 TraceCheckUtils]: 53: Hoare triple {99246#(<= ~counter~0 5)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,929 INFO L290 TraceCheckUtils]: 54: Hoare triple {99316#(<= ~counter~0 6)} assume !!(#t~post8 < 100);havoc #t~post8; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,930 INFO L272 TraceCheckUtils]: 55: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,930 INFO L290 TraceCheckUtils]: 56: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,930 INFO L290 TraceCheckUtils]: 57: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,931 INFO L290 TraceCheckUtils]: 58: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,931 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #98#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,932 INFO L272 TraceCheckUtils]: 60: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,932 INFO L290 TraceCheckUtils]: 61: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,932 INFO L290 TraceCheckUtils]: 62: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,933 INFO L290 TraceCheckUtils]: 63: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,933 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #100#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,934 INFO L272 TraceCheckUtils]: 65: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,934 INFO L290 TraceCheckUtils]: 66: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,934 INFO L290 TraceCheckUtils]: 67: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,935 INFO L290 TraceCheckUtils]: 68: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,935 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #102#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,936 INFO L272 TraceCheckUtils]: 70: Hoare triple {99316#(<= ~counter~0 6)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,936 INFO L290 TraceCheckUtils]: 71: Hoare triple {99316#(<= ~counter~0 6)} ~cond := #in~cond; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,936 INFO L290 TraceCheckUtils]: 72: Hoare triple {99316#(<= ~counter~0 6)} assume !(0 == ~cond); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,937 INFO L290 TraceCheckUtils]: 73: Hoare triple {99316#(<= ~counter~0 6)} assume true; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,937 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99316#(<= ~counter~0 6)} {99316#(<= ~counter~0 6)} #104#return; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,937 INFO L290 TraceCheckUtils]: 75: Hoare triple {99316#(<= ~counter~0 6)} assume !(~c~0 >= 2 * ~v~0); {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,938 INFO L290 TraceCheckUtils]: 76: Hoare triple {99316#(<= ~counter~0 6)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99316#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:31,939 INFO L290 TraceCheckUtils]: 77: Hoare triple {99316#(<= ~counter~0 6)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:31,939 INFO L290 TraceCheckUtils]: 78: Hoare triple {99389#(<= ~counter~0 7)} assume !!(#t~post7 < 100);havoc #t~post7; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:31,940 INFO L290 TraceCheckUtils]: 79: Hoare triple {99389#(<= ~counter~0 7)} assume !(~c~0 >= ~b~0); {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:31,940 INFO L290 TraceCheckUtils]: 80: Hoare triple {99389#(<= ~counter~0 7)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99389#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:31,941 INFO L290 TraceCheckUtils]: 81: Hoare triple {99389#(<= ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:31,941 INFO L290 TraceCheckUtils]: 82: Hoare triple {99402#(<= ~counter~0 8)} assume !!(#t~post6 < 100);havoc #t~post6; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:31,942 INFO L290 TraceCheckUtils]: 83: Hoare triple {99402#(<= ~counter~0 8)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99402#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:31,942 INFO L290 TraceCheckUtils]: 84: Hoare triple {99402#(<= ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99412#(<= |main_#t~post7| 8)} is VALID [2022-04-28 05:55:31,942 INFO L290 TraceCheckUtils]: 85: Hoare triple {99412#(<= |main_#t~post7| 8)} assume !(#t~post7 < 100);havoc #t~post7; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 100);havoc #t~post6; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 05:55:31,943 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 96 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:31,944 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 92: Hoare triple {99147#false} assume !false; {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 91: Hoare triple {99147#false} assume 0 == ~cond; {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 90: Hoare triple {99147#false} ~cond := #in~cond; {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L272 TraceCheckUtils]: 89: Hoare triple {99147#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 88: Hoare triple {99147#false} assume !(#t~post6 < 100);havoc #t~post6; {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 87: Hoare triple {99147#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 86: Hoare triple {99147#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99147#false} is VALID [2022-04-28 05:55:32,418 INFO L290 TraceCheckUtils]: 85: Hoare triple {99458#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {99147#false} is VALID [2022-04-28 05:55:32,419 INFO L290 TraceCheckUtils]: 84: Hoare triple {99462#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99458#(< |main_#t~post7| 100)} is VALID [2022-04-28 05:55:32,419 INFO L290 TraceCheckUtils]: 83: Hoare triple {99462#(< ~counter~0 100)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99462#(< ~counter~0 100)} is VALID [2022-04-28 05:55:32,419 INFO L290 TraceCheckUtils]: 82: Hoare triple {99462#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {99462#(< ~counter~0 100)} is VALID [2022-04-28 05:55:32,421 INFO L290 TraceCheckUtils]: 81: Hoare triple {99472#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99462#(< ~counter~0 100)} is VALID [2022-04-28 05:55:32,421 INFO L290 TraceCheckUtils]: 80: Hoare triple {99472#(< ~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; {99472#(< ~counter~0 99)} is VALID [2022-04-28 05:55:32,421 INFO L290 TraceCheckUtils]: 79: Hoare triple {99472#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {99472#(< ~counter~0 99)} is VALID [2022-04-28 05:55:32,422 INFO L290 TraceCheckUtils]: 78: Hoare triple {99472#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {99472#(< ~counter~0 99)} is VALID [2022-04-28 05:55:32,423 INFO L290 TraceCheckUtils]: 77: Hoare triple {99485#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99472#(< ~counter~0 99)} is VALID [2022-04-28 05:55:32,423 INFO L290 TraceCheckUtils]: 76: Hoare triple {99485#(< ~counter~0 98)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,423 INFO L290 TraceCheckUtils]: 75: Hoare triple {99485#(< ~counter~0 98)} assume !(~c~0 >= 2 * ~v~0); {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,424 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {99146#true} {99485#(< ~counter~0 98)} #104#return; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,424 INFO L290 TraceCheckUtils]: 73: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,424 INFO L290 TraceCheckUtils]: 72: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,424 INFO L290 TraceCheckUtils]: 71: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,424 INFO L272 TraceCheckUtils]: 70: Hoare triple {99485#(< ~counter~0 98)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,424 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {99146#true} {99485#(< ~counter~0 98)} #102#return; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,424 INFO L290 TraceCheckUtils]: 68: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,425 INFO L290 TraceCheckUtils]: 67: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,425 INFO L290 TraceCheckUtils]: 66: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,425 INFO L272 TraceCheckUtils]: 65: Hoare triple {99485#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,425 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {99146#true} {99485#(< ~counter~0 98)} #100#return; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,425 INFO L290 TraceCheckUtils]: 63: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,425 INFO L290 TraceCheckUtils]: 62: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,425 INFO L290 TraceCheckUtils]: 61: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,426 INFO L272 TraceCheckUtils]: 60: Hoare triple {99485#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,426 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {99146#true} {99485#(< ~counter~0 98)} #98#return; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,426 INFO L290 TraceCheckUtils]: 58: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,426 INFO L290 TraceCheckUtils]: 57: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,426 INFO L290 TraceCheckUtils]: 56: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,426 INFO L272 TraceCheckUtils]: 55: Hoare triple {99485#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,427 INFO L290 TraceCheckUtils]: 54: Hoare triple {99485#(< ~counter~0 98)} assume !!(#t~post8 < 100);havoc #t~post8; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,427 INFO L290 TraceCheckUtils]: 53: Hoare triple {99558#(< ~counter~0 97)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99485#(< ~counter~0 98)} is VALID [2022-04-28 05:55:32,428 INFO L290 TraceCheckUtils]: 52: Hoare triple {99558#(< ~counter~0 97)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,428 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {99146#true} {99558#(< ~counter~0 97)} #104#return; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,428 INFO L290 TraceCheckUtils]: 50: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,428 INFO L290 TraceCheckUtils]: 49: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,428 INFO L290 TraceCheckUtils]: 48: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,428 INFO L272 TraceCheckUtils]: 47: Hoare triple {99558#(< ~counter~0 97)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,429 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {99146#true} {99558#(< ~counter~0 97)} #102#return; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,429 INFO L290 TraceCheckUtils]: 45: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,429 INFO L290 TraceCheckUtils]: 44: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,429 INFO L290 TraceCheckUtils]: 43: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,429 INFO L272 TraceCheckUtils]: 42: Hoare triple {99558#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,430 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {99146#true} {99558#(< ~counter~0 97)} #100#return; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,430 INFO L290 TraceCheckUtils]: 40: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,430 INFO L290 TraceCheckUtils]: 39: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,430 INFO L290 TraceCheckUtils]: 38: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,430 INFO L272 TraceCheckUtils]: 37: Hoare triple {99558#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,431 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {99146#true} {99558#(< ~counter~0 97)} #98#return; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,431 INFO L290 TraceCheckUtils]: 35: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,431 INFO L290 TraceCheckUtils]: 34: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,431 INFO L290 TraceCheckUtils]: 33: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,431 INFO L272 TraceCheckUtils]: 32: Hoare triple {99558#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,431 INFO L290 TraceCheckUtils]: 31: Hoare triple {99558#(< ~counter~0 97)} assume !!(#t~post8 < 100);havoc #t~post8; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,432 INFO L290 TraceCheckUtils]: 30: Hoare triple {99628#(< ~counter~0 96)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {99558#(< ~counter~0 97)} is VALID [2022-04-28 05:55:32,432 INFO L290 TraceCheckUtils]: 29: Hoare triple {99628#(< ~counter~0 96)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {99628#(< ~counter~0 96)} is VALID [2022-04-28 05:55:32,432 INFO L290 TraceCheckUtils]: 28: Hoare triple {99628#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {99628#(< ~counter~0 96)} is VALID [2022-04-28 05:55:32,433 INFO L290 TraceCheckUtils]: 27: Hoare triple {99638#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99628#(< ~counter~0 96)} is VALID [2022-04-28 05:55:32,434 INFO L290 TraceCheckUtils]: 26: Hoare triple {99638#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99638#(< ~counter~0 95)} is VALID [2022-04-28 05:55:32,434 INFO L290 TraceCheckUtils]: 25: Hoare triple {99638#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {99638#(< ~counter~0 95)} is VALID [2022-04-28 05:55:32,435 INFO L290 TraceCheckUtils]: 24: Hoare triple {99648#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99638#(< ~counter~0 95)} is VALID [2022-04-28 05:55:32,435 INFO L290 TraceCheckUtils]: 23: Hoare triple {99648#(< ~counter~0 94)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {99648#(< ~counter~0 94)} is VALID [2022-04-28 05:55:32,435 INFO L290 TraceCheckUtils]: 22: Hoare triple {99648#(< ~counter~0 94)} assume !(~c~0 >= ~b~0); {99648#(< ~counter~0 94)} is VALID [2022-04-28 05:55:32,435 INFO L290 TraceCheckUtils]: 21: Hoare triple {99648#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {99648#(< ~counter~0 94)} is VALID [2022-04-28 05:55:32,436 INFO L290 TraceCheckUtils]: 20: Hoare triple {99661#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {99648#(< ~counter~0 94)} is VALID [2022-04-28 05:55:32,436 INFO L290 TraceCheckUtils]: 19: Hoare triple {99661#(< ~counter~0 93)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {99661#(< ~counter~0 93)} is VALID [2022-04-28 05:55:32,437 INFO L290 TraceCheckUtils]: 18: Hoare triple {99661#(< ~counter~0 93)} assume !!(#t~post6 < 100);havoc #t~post6; {99661#(< ~counter~0 93)} is VALID [2022-04-28 05:55:32,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {99671#(< ~counter~0 92)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {99661#(< ~counter~0 93)} is VALID [2022-04-28 05:55:32,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {99671#(< ~counter~0 92)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,440 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {99146#true} {99671#(< ~counter~0 92)} #96#return; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,440 INFO L272 TraceCheckUtils]: 11: Hoare triple {99671#(< ~counter~0 92)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,441 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {99146#true} {99671#(< ~counter~0 92)} #94#return; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,441 INFO L290 TraceCheckUtils]: 9: Hoare triple {99146#true} assume true; {99146#true} is VALID [2022-04-28 05:55:32,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {99146#true} assume !(0 == ~cond); {99146#true} is VALID [2022-04-28 05:55:32,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {99146#true} ~cond := #in~cond; {99146#true} is VALID [2022-04-28 05:55:32,441 INFO L272 TraceCheckUtils]: 6: Hoare triple {99671#(< ~counter~0 92)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {99146#true} is VALID [2022-04-28 05:55:32,441 INFO L290 TraceCheckUtils]: 5: Hoare triple {99671#(< ~counter~0 92)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,442 INFO L272 TraceCheckUtils]: 4: Hoare triple {99671#(< ~counter~0 92)} call #t~ret9 := main(); {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {99671#(< ~counter~0 92)} {99146#true} #108#return; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,443 INFO L290 TraceCheckUtils]: 2: Hoare triple {99671#(< ~counter~0 92)} assume true; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,443 INFO L290 TraceCheckUtils]: 1: Hoare triple {99146#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {99671#(< ~counter~0 92)} is VALID [2022-04-28 05:55:32,443 INFO L272 TraceCheckUtils]: 0: Hoare triple {99146#true} call ULTIMATE.init(); {99146#true} is VALID [2022-04-28 05:55:32,444 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 24 proven. 32 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:32,444 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:32,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1920481710] [2022-04-28 05:55:32,444 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:32,444 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1593578772] [2022-04-28 05:55:32,444 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1593578772] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:32,444 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:32,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 22 [2022-04-28 05:55:32,445 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:32,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1113082557] [2022-04-28 05:55:32,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1113082557] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:32,445 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:32,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:55:32,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1530839571] [2022-04-28 05:55:32,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:32,446 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 05:55:32,446 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:32,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:32,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:32,524 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:55:32,525 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:32,525 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:55:32,525 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=195, Invalid=267, Unknown=0, NotChecked=0, Total=462 [2022-04-28 05:55:32,525 INFO L87 Difference]: Start difference. First operand 1038 states and 1386 transitions. Second operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:35,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:35,973 INFO L93 Difference]: Finished difference Result 1382 states and 1902 transitions. [2022-04-28 05:55:35,973 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:55:35,973 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 93 [2022-04-28 05:55:35,973 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:35,973 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:35,975 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 05:55:35,975 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:35,976 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 233 transitions. [2022-04-28 05:55:35,976 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 233 transitions. [2022-04-28 05:55:36,205 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:36,261 INFO L225 Difference]: With dead ends: 1382 [2022-04-28 05:55:36,261 INFO L226 Difference]: Without dead ends: 1062 [2022-04-28 05:55:36,262 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 191 GetRequests, 165 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 39 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=310, Invalid=446, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:55:36,263 INFO L413 NwaCegarLoop]: 69 mSDtfsCounter, 140 mSDsluCounter, 241 mSDsCounter, 0 mSdLazyCounter, 127 mSolverCounterSat, 65 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 140 SdHoareTripleChecker+Valid, 310 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 65 IncrementalHoareTripleChecker+Valid, 127 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:36,263 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [140 Valid, 310 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [65 Valid, 127 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:55:36,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1062 states. [2022-04-28 05:55:38,993 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1062 to 1058. [2022-04-28 05:55:38,993 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:38,994 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:38,995 INFO L74 IsIncluded]: Start isIncluded. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:38,995 INFO L87 Difference]: Start difference. First operand 1062 states. Second operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:39,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:39,030 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 05:55:39,030 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 05:55:39,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:39,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:39,032 INFO L74 IsIncluded]: Start isIncluded. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 05:55:39,033 INFO L87 Difference]: Start difference. First operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) Second operand 1062 states. [2022-04-28 05:55:39,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:39,068 INFO L93 Difference]: Finished difference Result 1062 states and 1407 transitions. [2022-04-28 05:55:39,068 INFO L276 IsEmpty]: Start isEmpty. Operand 1062 states and 1407 transitions. [2022-04-28 05:55:39,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:39,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:39,070 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:39,070 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:39,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1058 states, 754 states have (on average 1.2612732095490715) internal successors, (951), 765 states have internal predecessors, (951), 229 states have call successors, (229), 75 states have call predecessors, (229), 74 states have return successors, (225), 217 states have call predecessors, (225), 225 states have call successors, (225) [2022-04-28 05:55:39,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1058 states to 1058 states and 1405 transitions. [2022-04-28 05:55:39,123 INFO L78 Accepts]: Start accepts. Automaton has 1058 states and 1405 transitions. Word has length 93 [2022-04-28 05:55:39,124 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:39,124 INFO L495 AbstractCegarLoop]: Abstraction has 1058 states and 1405 transitions. [2022-04-28 05:55:39,124 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 4.0) internal successors, (48), 11 states have internal predecessors, (48), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:39,124 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1058 states and 1405 transitions. [2022-04-28 05:55:42,015 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1405 edges. 1405 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:42,016 INFO L276 IsEmpty]: Start isEmpty. Operand 1058 states and 1405 transitions. [2022-04-28 05:55:42,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-28 05:55:42,017 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:42,017 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:42,033 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 05:55:42,219 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 05:55:42,219 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:42,220 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:42,220 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 5 times [2022-04-28 05:55:42,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:42,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1427347003] [2022-04-28 05:55:42,220 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:42,220 INFO L85 PathProgramCache]: Analyzing trace with hash -2034142563, now seen corresponding path program 6 times [2022-04-28 05:55:42,220 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:42,220 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1841444004] [2022-04-28 05:55:42,220 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:42,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:42,246 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:42,246 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1271698498] [2022-04-28 05:55:42,246 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:55:42,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:42,246 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:42,247 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 05:55:42,257 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 05:55:42,381 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:55:42,381 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:42,383 INFO L263 TraceCheckSpWp]: Trace formula consists of 300 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:55:42,402 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:42,403 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:42,861 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 05:55:42,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,862 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106749#(<= ~counter~0 0)} {106741#true} #108#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,863 INFO L272 TraceCheckUtils]: 4: Hoare triple {106749#(<= ~counter~0 0)} call #t~ret9 := main(); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,863 INFO L290 TraceCheckUtils]: 5: Hoare triple {106749#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,863 INFO L272 TraceCheckUtils]: 6: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,865 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #94#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,865 INFO L272 TraceCheckUtils]: 11: Hoare triple {106749#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,865 INFO L290 TraceCheckUtils]: 12: Hoare triple {106749#(<= ~counter~0 0)} ~cond := #in~cond; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {106749#(<= ~counter~0 0)} assume !(0 == ~cond); {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,866 INFO L290 TraceCheckUtils]: 14: Hoare triple {106749#(<= ~counter~0 0)} assume true; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,866 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106749#(<= ~counter~0 0)} {106749#(<= ~counter~0 0)} #96#return; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,866 INFO L290 TraceCheckUtils]: 16: Hoare triple {106749#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {106749#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:42,868 INFO L290 TraceCheckUtils]: 17: Hoare triple {106749#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:42,868 INFO L290 TraceCheckUtils]: 18: Hoare triple {106798#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:42,869 INFO L290 TraceCheckUtils]: 19: Hoare triple {106798#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106798#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:42,869 INFO L290 TraceCheckUtils]: 20: Hoare triple {106798#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:42,870 INFO L290 TraceCheckUtils]: 21: Hoare triple {106808#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:42,870 INFO L290 TraceCheckUtils]: 22: Hoare triple {106808#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:42,870 INFO L290 TraceCheckUtils]: 23: Hoare triple {106808#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106808#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:42,871 INFO L290 TraceCheckUtils]: 24: Hoare triple {106808#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:42,871 INFO L290 TraceCheckUtils]: 25: Hoare triple {106821#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:42,872 INFO L290 TraceCheckUtils]: 26: Hoare triple {106821#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106821#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:42,872 INFO L290 TraceCheckUtils]: 27: Hoare triple {106821#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:42,873 INFO L290 TraceCheckUtils]: 28: Hoare triple {106831#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:42,873 INFO L290 TraceCheckUtils]: 29: Hoare triple {106831#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106831#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:42,874 INFO L290 TraceCheckUtils]: 30: Hoare triple {106831#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,874 INFO L290 TraceCheckUtils]: 31: Hoare triple {106841#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,875 INFO L272 TraceCheckUtils]: 32: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,875 INFO L290 TraceCheckUtils]: 33: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,875 INFO L290 TraceCheckUtils]: 34: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,875 INFO L290 TraceCheckUtils]: 35: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,876 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #98#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,877 INFO L272 TraceCheckUtils]: 37: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,877 INFO L290 TraceCheckUtils]: 38: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,877 INFO L290 TraceCheckUtils]: 39: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,877 INFO L290 TraceCheckUtils]: 40: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,878 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #100#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,878 INFO L272 TraceCheckUtils]: 42: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,879 INFO L290 TraceCheckUtils]: 43: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,879 INFO L290 TraceCheckUtils]: 44: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,879 INFO L290 TraceCheckUtils]: 45: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,880 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #102#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,880 INFO L272 TraceCheckUtils]: 47: Hoare triple {106841#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,881 INFO L290 TraceCheckUtils]: 48: Hoare triple {106841#(<= ~counter~0 5)} ~cond := #in~cond; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,881 INFO L290 TraceCheckUtils]: 49: Hoare triple {106841#(<= ~counter~0 5)} assume !(0 == ~cond); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,881 INFO L290 TraceCheckUtils]: 50: Hoare triple {106841#(<= ~counter~0 5)} assume true; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,882 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106841#(<= ~counter~0 5)} {106841#(<= ~counter~0 5)} #104#return; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,882 INFO L290 TraceCheckUtils]: 52: Hoare triple {106841#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,882 INFO L290 TraceCheckUtils]: 53: Hoare triple {106841#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106841#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:42,883 INFO L290 TraceCheckUtils]: 54: Hoare triple {106841#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:42,883 INFO L290 TraceCheckUtils]: 55: Hoare triple {106914#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:42,883 INFO L290 TraceCheckUtils]: 56: Hoare triple {106914#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:42,884 INFO L290 TraceCheckUtils]: 57: Hoare triple {106914#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106914#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:42,884 INFO L290 TraceCheckUtils]: 58: Hoare triple {106914#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:42,885 INFO L290 TraceCheckUtils]: 59: Hoare triple {106927#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:42,885 INFO L290 TraceCheckUtils]: 60: Hoare triple {106927#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {106927#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:42,886 INFO L290 TraceCheckUtils]: 61: Hoare triple {106927#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:42,886 INFO L290 TraceCheckUtils]: 62: Hoare triple {106937#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:42,886 INFO L290 TraceCheckUtils]: 63: Hoare triple {106937#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {106937#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:42,887 INFO L290 TraceCheckUtils]: 64: Hoare triple {106937#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,887 INFO L290 TraceCheckUtils]: 65: Hoare triple {106947#(<= ~counter~0 9)} assume !!(#t~post8 < 100);havoc #t~post8; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,888 INFO L272 TraceCheckUtils]: 66: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,888 INFO L290 TraceCheckUtils]: 67: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,889 INFO L290 TraceCheckUtils]: 68: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,889 INFO L290 TraceCheckUtils]: 69: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,889 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #98#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,890 INFO L272 TraceCheckUtils]: 71: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,890 INFO L290 TraceCheckUtils]: 72: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,890 INFO L290 TraceCheckUtils]: 73: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,891 INFO L290 TraceCheckUtils]: 74: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,891 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #100#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,892 INFO L272 TraceCheckUtils]: 76: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,892 INFO L290 TraceCheckUtils]: 77: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,892 INFO L290 TraceCheckUtils]: 78: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,893 INFO L290 TraceCheckUtils]: 79: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,893 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #102#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,894 INFO L272 TraceCheckUtils]: 81: Hoare triple {106947#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,894 INFO L290 TraceCheckUtils]: 82: Hoare triple {106947#(<= ~counter~0 9)} ~cond := #in~cond; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,894 INFO L290 TraceCheckUtils]: 83: Hoare triple {106947#(<= ~counter~0 9)} assume !(0 == ~cond); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,894 INFO L290 TraceCheckUtils]: 84: Hoare triple {106947#(<= ~counter~0 9)} assume true; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,895 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106947#(<= ~counter~0 9)} {106947#(<= ~counter~0 9)} #104#return; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,895 INFO L290 TraceCheckUtils]: 86: Hoare triple {106947#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,895 INFO L290 TraceCheckUtils]: 87: Hoare triple {106947#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {106947#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:42,896 INFO L290 TraceCheckUtils]: 88: Hoare triple {106947#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107020#(<= |main_#t~post7| 9)} is VALID [2022-04-28 05:55:42,896 INFO L290 TraceCheckUtils]: 89: Hoare triple {107020#(<= |main_#t~post7| 9)} assume !(#t~post7 < 100);havoc #t~post7; {106742#false} is VALID [2022-04-28 05:55:42,896 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106742#false} is VALID [2022-04-28 05:55:42,896 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 05:55:42,896 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 100);havoc #t~post6; {106742#false} is VALID [2022-04-28 05:55:42,896 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {106742#false} is VALID [2022-04-28 05:55:42,896 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 05:55:42,897 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 05:55:42,897 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 05:55:42,897 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 108 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:42,897 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:43,411 INFO L290 TraceCheckUtils]: 96: Hoare triple {106742#false} assume !false; {106742#false} is VALID [2022-04-28 05:55:43,411 INFO L290 TraceCheckUtils]: 95: Hoare triple {106742#false} assume 0 == ~cond; {106742#false} is VALID [2022-04-28 05:55:43,411 INFO L290 TraceCheckUtils]: 94: Hoare triple {106742#false} ~cond := #in~cond; {106742#false} is VALID [2022-04-28 05:55:43,411 INFO L272 TraceCheckUtils]: 93: Hoare triple {106742#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {106742#false} is VALID [2022-04-28 05:55:43,411 INFO L290 TraceCheckUtils]: 92: Hoare triple {106742#false} assume !(#t~post6 < 100);havoc #t~post6; {106742#false} is VALID [2022-04-28 05:55:43,411 INFO L290 TraceCheckUtils]: 91: Hoare triple {106742#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {106742#false} is VALID [2022-04-28 05:55:43,411 INFO L290 TraceCheckUtils]: 90: Hoare triple {106742#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {106742#false} is VALID [2022-04-28 05:55:43,412 INFO L290 TraceCheckUtils]: 89: Hoare triple {107066#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {106742#false} is VALID [2022-04-28 05:55:43,412 INFO L290 TraceCheckUtils]: 88: Hoare triple {107070#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107066#(< |main_#t~post7| 100)} is VALID [2022-04-28 05:55:43,412 INFO L290 TraceCheckUtils]: 87: Hoare triple {107070#(< ~counter~0 100)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,413 INFO L290 TraceCheckUtils]: 86: Hoare triple {107070#(< ~counter~0 100)} assume !(~c~0 >= 2 * ~v~0); {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,413 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {106741#true} {107070#(< ~counter~0 100)} #104#return; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,413 INFO L290 TraceCheckUtils]: 84: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,413 INFO L290 TraceCheckUtils]: 83: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,413 INFO L290 TraceCheckUtils]: 82: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,413 INFO L272 TraceCheckUtils]: 81: Hoare triple {107070#(< ~counter~0 100)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,414 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {106741#true} {107070#(< ~counter~0 100)} #102#return; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,414 INFO L290 TraceCheckUtils]: 79: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,414 INFO L290 TraceCheckUtils]: 78: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,414 INFO L290 TraceCheckUtils]: 77: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,414 INFO L272 TraceCheckUtils]: 76: Hoare triple {107070#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,415 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {106741#true} {107070#(< ~counter~0 100)} #100#return; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,415 INFO L290 TraceCheckUtils]: 74: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,415 INFO L290 TraceCheckUtils]: 73: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,415 INFO L290 TraceCheckUtils]: 72: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,415 INFO L272 TraceCheckUtils]: 71: Hoare triple {107070#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,416 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {106741#true} {107070#(< ~counter~0 100)} #98#return; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,416 INFO L290 TraceCheckUtils]: 69: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,416 INFO L290 TraceCheckUtils]: 68: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,416 INFO L290 TraceCheckUtils]: 67: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,416 INFO L272 TraceCheckUtils]: 66: Hoare triple {107070#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,416 INFO L290 TraceCheckUtils]: 65: Hoare triple {107070#(< ~counter~0 100)} assume !!(#t~post8 < 100);havoc #t~post8; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,418 INFO L290 TraceCheckUtils]: 64: Hoare triple {107143#(< ~counter~0 99)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107070#(< ~counter~0 100)} is VALID [2022-04-28 05:55:43,418 INFO L290 TraceCheckUtils]: 63: Hoare triple {107143#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107143#(< ~counter~0 99)} is VALID [2022-04-28 05:55:43,418 INFO L290 TraceCheckUtils]: 62: Hoare triple {107143#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {107143#(< ~counter~0 99)} is VALID [2022-04-28 05:55:43,419 INFO L290 TraceCheckUtils]: 61: Hoare triple {107153#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107143#(< ~counter~0 99)} is VALID [2022-04-28 05:55:43,419 INFO L290 TraceCheckUtils]: 60: Hoare triple {107153#(< ~counter~0 98)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107153#(< ~counter~0 98)} is VALID [2022-04-28 05:55:43,420 INFO L290 TraceCheckUtils]: 59: Hoare triple {107153#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {107153#(< ~counter~0 98)} is VALID [2022-04-28 05:55:43,421 INFO L290 TraceCheckUtils]: 58: Hoare triple {107163#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107153#(< ~counter~0 98)} is VALID [2022-04-28 05:55:43,421 INFO L290 TraceCheckUtils]: 57: Hoare triple {107163#(< ~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; {107163#(< ~counter~0 97)} is VALID [2022-04-28 05:55:43,421 INFO L290 TraceCheckUtils]: 56: Hoare triple {107163#(< ~counter~0 97)} assume !(~c~0 >= ~b~0); {107163#(< ~counter~0 97)} is VALID [2022-04-28 05:55:43,421 INFO L290 TraceCheckUtils]: 55: Hoare triple {107163#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {107163#(< ~counter~0 97)} is VALID [2022-04-28 05:55:43,422 INFO L290 TraceCheckUtils]: 54: Hoare triple {107176#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107163#(< ~counter~0 97)} is VALID [2022-04-28 05:55:43,422 INFO L290 TraceCheckUtils]: 53: Hoare triple {107176#(< ~counter~0 96)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,423 INFO L290 TraceCheckUtils]: 52: Hoare triple {107176#(< ~counter~0 96)} assume !(~c~0 >= 2 * ~v~0); {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,423 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {106741#true} {107176#(< ~counter~0 96)} #104#return; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,423 INFO L290 TraceCheckUtils]: 50: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,423 INFO L290 TraceCheckUtils]: 49: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,423 INFO L290 TraceCheckUtils]: 48: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,423 INFO L272 TraceCheckUtils]: 47: Hoare triple {107176#(< ~counter~0 96)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,424 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {106741#true} {107176#(< ~counter~0 96)} #102#return; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,424 INFO L290 TraceCheckUtils]: 45: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,424 INFO L290 TraceCheckUtils]: 44: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,424 INFO L290 TraceCheckUtils]: 43: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,424 INFO L272 TraceCheckUtils]: 42: Hoare triple {107176#(< ~counter~0 96)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,425 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {106741#true} {107176#(< ~counter~0 96)} #100#return; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,425 INFO L290 TraceCheckUtils]: 40: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,425 INFO L290 TraceCheckUtils]: 39: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,425 INFO L290 TraceCheckUtils]: 38: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,425 INFO L272 TraceCheckUtils]: 37: Hoare triple {107176#(< ~counter~0 96)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,426 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {106741#true} {107176#(< ~counter~0 96)} #98#return; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,426 INFO L290 TraceCheckUtils]: 35: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,426 INFO L290 TraceCheckUtils]: 34: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,426 INFO L290 TraceCheckUtils]: 33: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,426 INFO L272 TraceCheckUtils]: 32: Hoare triple {107176#(< ~counter~0 96)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,426 INFO L290 TraceCheckUtils]: 31: Hoare triple {107176#(< ~counter~0 96)} assume !!(#t~post8 < 100);havoc #t~post8; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,427 INFO L290 TraceCheckUtils]: 30: Hoare triple {107249#(< ~counter~0 95)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {107176#(< ~counter~0 96)} is VALID [2022-04-28 05:55:43,427 INFO L290 TraceCheckUtils]: 29: Hoare triple {107249#(< ~counter~0 95)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {107249#(< ~counter~0 95)} is VALID [2022-04-28 05:55:43,427 INFO L290 TraceCheckUtils]: 28: Hoare triple {107249#(< ~counter~0 95)} assume !!(#t~post7 < 100);havoc #t~post7; {107249#(< ~counter~0 95)} is VALID [2022-04-28 05:55:43,428 INFO L290 TraceCheckUtils]: 27: Hoare triple {107259#(< ~counter~0 94)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107249#(< ~counter~0 95)} is VALID [2022-04-28 05:55:43,429 INFO L290 TraceCheckUtils]: 26: Hoare triple {107259#(< ~counter~0 94)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107259#(< ~counter~0 94)} is VALID [2022-04-28 05:55:43,429 INFO L290 TraceCheckUtils]: 25: Hoare triple {107259#(< ~counter~0 94)} assume !!(#t~post6 < 100);havoc #t~post6; {107259#(< ~counter~0 94)} is VALID [2022-04-28 05:55:43,430 INFO L290 TraceCheckUtils]: 24: Hoare triple {107269#(< ~counter~0 93)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107259#(< ~counter~0 94)} is VALID [2022-04-28 05:55:43,430 INFO L290 TraceCheckUtils]: 23: Hoare triple {107269#(< ~counter~0 93)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {107269#(< ~counter~0 93)} is VALID [2022-04-28 05:55:43,430 INFO L290 TraceCheckUtils]: 22: Hoare triple {107269#(< ~counter~0 93)} assume !(~c~0 >= ~b~0); {107269#(< ~counter~0 93)} is VALID [2022-04-28 05:55:43,430 INFO L290 TraceCheckUtils]: 21: Hoare triple {107269#(< ~counter~0 93)} assume !!(#t~post7 < 100);havoc #t~post7; {107269#(< ~counter~0 93)} is VALID [2022-04-28 05:55:43,431 INFO L290 TraceCheckUtils]: 20: Hoare triple {107282#(< ~counter~0 92)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {107269#(< ~counter~0 93)} is VALID [2022-04-28 05:55:43,432 INFO L290 TraceCheckUtils]: 19: Hoare triple {107282#(< ~counter~0 92)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {107282#(< ~counter~0 92)} is VALID [2022-04-28 05:55:43,432 INFO L290 TraceCheckUtils]: 18: Hoare triple {107282#(< ~counter~0 92)} assume !!(#t~post6 < 100);havoc #t~post6; {107282#(< ~counter~0 92)} is VALID [2022-04-28 05:55:43,433 INFO L290 TraceCheckUtils]: 17: Hoare triple {107292#(< ~counter~0 91)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {107282#(< ~counter~0 92)} is VALID [2022-04-28 05:55:43,433 INFO L290 TraceCheckUtils]: 16: Hoare triple {107292#(< ~counter~0 91)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,433 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {106741#true} {107292#(< ~counter~0 91)} #96#return; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,433 INFO L290 TraceCheckUtils]: 14: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,433 INFO L290 TraceCheckUtils]: 13: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,434 INFO L290 TraceCheckUtils]: 12: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,434 INFO L272 TraceCheckUtils]: 11: Hoare triple {107292#(< ~counter~0 91)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106741#true} {107292#(< ~counter~0 91)} #94#return; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {106741#true} assume true; {106741#true} is VALID [2022-04-28 05:55:43,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {106741#true} assume !(0 == ~cond); {106741#true} is VALID [2022-04-28 05:55:43,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {106741#true} ~cond := #in~cond; {106741#true} is VALID [2022-04-28 05:55:43,434 INFO L272 TraceCheckUtils]: 6: Hoare triple {107292#(< ~counter~0 91)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {106741#true} is VALID [2022-04-28 05:55:43,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {107292#(< ~counter~0 91)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,435 INFO L272 TraceCheckUtils]: 4: Hoare triple {107292#(< ~counter~0 91)} call #t~ret9 := main(); {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,435 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {107292#(< ~counter~0 91)} {106741#true} #108#return; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,435 INFO L290 TraceCheckUtils]: 2: Hoare triple {107292#(< ~counter~0 91)} assume true; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,436 INFO L290 TraceCheckUtils]: 1: Hoare triple {106741#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {107292#(< ~counter~0 91)} is VALID [2022-04-28 05:55:43,436 INFO L272 TraceCheckUtils]: 0: Hoare triple {106741#true} call ULTIMATE.init(); {106741#true} is VALID [2022-04-28 05:55:43,436 INFO L134 CoverageAnalysis]: Checked inductivity of 184 backedges. 24 proven. 44 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:43,436 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:43,436 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1841444004] [2022-04-28 05:55:43,436 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:43,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1271698498] [2022-04-28 05:55:43,437 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1271698498] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:43,437 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:43,437 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 05:55:43,437 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:43,437 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1427347003] [2022-04-28 05:55:43,437 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1427347003] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:43,437 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:43,437 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:55:43,437 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2069464430] [2022-04-28 05:55:43,437 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:43,438 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 05:55:43,438 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:43,438 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:43,506 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 05:55:43,506 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:55:43,506 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:43,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:55:43,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:55:43,506 INFO L87 Difference]: Start difference. First operand 1058 states and 1405 transitions. Second operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:47,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:47,469 INFO L93 Difference]: Finished difference Result 1539 states and 2090 transitions. [2022-04-28 05:55:47,469 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 05:55:47,469 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 97 [2022-04-28 05:55:47,469 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:55:47,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:47,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:55:47,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:47,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:55:47,472 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 05:55:47,712 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:47,769 INFO L225 Difference]: With dead ends: 1539 [2022-04-28 05:55:47,769 INFO L226 Difference]: Without dead ends: 1219 [2022-04-28 05:55:47,770 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=384, Invalid=546, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:55:47,771 INFO L413 NwaCegarLoop]: 73 mSDtfsCounter, 170 mSDsluCounter, 255 mSDsCounter, 0 mSdLazyCounter, 155 mSolverCounterSat, 69 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 170 SdHoareTripleChecker+Valid, 328 SdHoareTripleChecker+Invalid, 224 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 69 IncrementalHoareTripleChecker+Valid, 155 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 05:55:47,771 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [170 Valid, 328 Invalid, 224 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [69 Valid, 155 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 05:55:47,772 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1219 states. [2022-04-28 05:55:50,821 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1219 to 1164. [2022-04-28 05:55:50,822 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:55:50,823 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:50,824 INFO L74 IsIncluded]: Start isIncluded. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:50,824 INFO L87 Difference]: Start difference. First operand 1219 states. Second operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:50,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:50,886 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 05:55:50,886 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 05:55:50,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:50,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:50,891 INFO L74 IsIncluded]: Start isIncluded. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 05:55:50,892 INFO L87 Difference]: Start difference. First operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) Second operand 1219 states. [2022-04-28 05:55:50,937 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:55:50,938 INFO L93 Difference]: Finished difference Result 1219 states and 1594 transitions. [2022-04-28 05:55:50,938 INFO L276 IsEmpty]: Start isEmpty. Operand 1219 states and 1594 transitions. [2022-04-28 05:55:50,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:55:50,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:55:50,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:55:50,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:55:50,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1164 states, 812 states have (on average 1.2561576354679802) internal successors, (1020), 824 states have internal predecessors, (1020), 262 states have call successors, (262), 90 states have call predecessors, (262), 89 states have return successors, (257), 249 states have call predecessors, (257), 257 states have call successors, (257) [2022-04-28 05:55:51,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1164 states to 1164 states and 1539 transitions. [2022-04-28 05:55:51,019 INFO L78 Accepts]: Start accepts. Automaton has 1164 states and 1539 transitions. Word has length 97 [2022-04-28 05:55:51,035 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:55:51,035 INFO L495 AbstractCegarLoop]: Abstraction has 1164 states and 1539 transitions. [2022-04-28 05:55:51,035 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.0) internal successors, (52), 12 states have internal predecessors, (52), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:51,035 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1164 states and 1539 transitions. [2022-04-28 05:55:54,334 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1539 edges. 1539 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:54,334 INFO L276 IsEmpty]: Start isEmpty. Operand 1164 states and 1539 transitions. [2022-04-28 05:55:54,335 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2022-04-28 05:55:54,335 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:55:54,335 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 5, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:55:54,352 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Ended with exit code 0 [2022-04-28 05:55:54,536 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2022-04-28 05:55:54,536 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:55:54,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:55:54,536 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 7 times [2022-04-28 05:55:54,536 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:54,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [259827345] [2022-04-28 05:55:54,537 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:55:54,537 INFO L85 PathProgramCache]: Analyzing trace with hash 1787026468, now seen corresponding path program 8 times [2022-04-28 05:55:54,537 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:55:54,537 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1743510417] [2022-04-28 05:55:54,537 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:55:54,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:55:54,548 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:55:54,548 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2002762515] [2022-04-28 05:55:54,548 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:55:54,548 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:55:54,548 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:55:54,549 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:55:54,585 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-28 05:55:54,632 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:55:54,632 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:55:54,634 INFO L263 TraceCheckSpWp]: Trace formula consists of 301 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 05:55:54,656 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:55:54,661 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:55:55,176 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 05:55:55,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,177 INFO L290 TraceCheckUtils]: 2: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,177 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115212#(<= ~counter~0 0)} {115204#true} #108#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {115212#(<= ~counter~0 0)} call #t~ret9 := main(); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {115212#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,178 INFO L272 TraceCheckUtils]: 6: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,178 INFO L290 TraceCheckUtils]: 7: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,179 INFO L290 TraceCheckUtils]: 8: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,179 INFO L290 TraceCheckUtils]: 9: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,179 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #94#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,180 INFO L272 TraceCheckUtils]: 11: Hoare triple {115212#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,180 INFO L290 TraceCheckUtils]: 12: Hoare triple {115212#(<= ~counter~0 0)} ~cond := #in~cond; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {115212#(<= ~counter~0 0)} assume !(0 == ~cond); {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {115212#(<= ~counter~0 0)} assume true; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,181 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115212#(<= ~counter~0 0)} {115212#(<= ~counter~0 0)} #96#return; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {115212#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115212#(<= ~counter~0 0)} is VALID [2022-04-28 05:55:55,183 INFO L290 TraceCheckUtils]: 17: Hoare triple {115212#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:55,183 INFO L290 TraceCheckUtils]: 18: Hoare triple {115261#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:55,183 INFO L290 TraceCheckUtils]: 19: Hoare triple {115261#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115261#(<= ~counter~0 1)} is VALID [2022-04-28 05:55:55,184 INFO L290 TraceCheckUtils]: 20: Hoare triple {115261#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:55,184 INFO L290 TraceCheckUtils]: 21: Hoare triple {115271#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:55,185 INFO L290 TraceCheckUtils]: 22: Hoare triple {115271#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:55,185 INFO L290 TraceCheckUtils]: 23: Hoare triple {115271#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115271#(<= ~counter~0 2)} is VALID [2022-04-28 05:55:55,186 INFO L290 TraceCheckUtils]: 24: Hoare triple {115271#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:55,186 INFO L290 TraceCheckUtils]: 25: Hoare triple {115284#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:55,186 INFO L290 TraceCheckUtils]: 26: Hoare triple {115284#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115284#(<= ~counter~0 3)} is VALID [2022-04-28 05:55:55,187 INFO L290 TraceCheckUtils]: 27: Hoare triple {115284#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:55,187 INFO L290 TraceCheckUtils]: 28: Hoare triple {115294#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:55,188 INFO L290 TraceCheckUtils]: 29: Hoare triple {115294#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115294#(<= ~counter~0 4)} is VALID [2022-04-28 05:55:55,189 INFO L290 TraceCheckUtils]: 30: Hoare triple {115294#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,189 INFO L290 TraceCheckUtils]: 31: Hoare triple {115304#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,189 INFO L272 TraceCheckUtils]: 32: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,190 INFO L290 TraceCheckUtils]: 33: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,190 INFO L290 TraceCheckUtils]: 34: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,190 INFO L290 TraceCheckUtils]: 35: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,191 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #98#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,191 INFO L272 TraceCheckUtils]: 37: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,192 INFO L290 TraceCheckUtils]: 38: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,192 INFO L290 TraceCheckUtils]: 39: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,192 INFO L290 TraceCheckUtils]: 40: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,193 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #100#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,193 INFO L272 TraceCheckUtils]: 42: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,193 INFO L290 TraceCheckUtils]: 43: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,194 INFO L290 TraceCheckUtils]: 44: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,194 INFO L290 TraceCheckUtils]: 45: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,194 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #102#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,195 INFO L272 TraceCheckUtils]: 47: Hoare triple {115304#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,195 INFO L290 TraceCheckUtils]: 48: Hoare triple {115304#(<= ~counter~0 5)} ~cond := #in~cond; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,195 INFO L290 TraceCheckUtils]: 49: Hoare triple {115304#(<= ~counter~0 5)} assume !(0 == ~cond); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,196 INFO L290 TraceCheckUtils]: 50: Hoare triple {115304#(<= ~counter~0 5)} assume true; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,196 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115304#(<= ~counter~0 5)} {115304#(<= ~counter~0 5)} #104#return; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,196 INFO L290 TraceCheckUtils]: 52: Hoare triple {115304#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,197 INFO L290 TraceCheckUtils]: 53: Hoare triple {115304#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115304#(<= ~counter~0 5)} is VALID [2022-04-28 05:55:55,198 INFO L290 TraceCheckUtils]: 54: Hoare triple {115304#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:55,198 INFO L290 TraceCheckUtils]: 55: Hoare triple {115377#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:55,198 INFO L290 TraceCheckUtils]: 56: Hoare triple {115377#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:55,198 INFO L290 TraceCheckUtils]: 57: Hoare triple {115377#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115377#(<= ~counter~0 6)} is VALID [2022-04-28 05:55:55,199 INFO L290 TraceCheckUtils]: 58: Hoare triple {115377#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:55,199 INFO L290 TraceCheckUtils]: 59: Hoare triple {115390#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:55,200 INFO L290 TraceCheckUtils]: 60: Hoare triple {115390#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115390#(<= ~counter~0 7)} is VALID [2022-04-28 05:55:55,201 INFO L290 TraceCheckUtils]: 61: Hoare triple {115390#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:55,201 INFO L290 TraceCheckUtils]: 62: Hoare triple {115400#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:55,201 INFO L290 TraceCheckUtils]: 63: Hoare triple {115400#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115400#(<= ~counter~0 8)} is VALID [2022-04-28 05:55:55,202 INFO L290 TraceCheckUtils]: 64: Hoare triple {115400#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,202 INFO L290 TraceCheckUtils]: 65: Hoare triple {115410#(<= ~counter~0 9)} assume !!(#t~post8 < 100);havoc #t~post8; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,203 INFO L272 TraceCheckUtils]: 66: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,203 INFO L290 TraceCheckUtils]: 67: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,203 INFO L290 TraceCheckUtils]: 68: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,203 INFO L290 TraceCheckUtils]: 69: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,204 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #98#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,205 INFO L272 TraceCheckUtils]: 71: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,205 INFO L290 TraceCheckUtils]: 72: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,205 INFO L290 TraceCheckUtils]: 73: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,205 INFO L290 TraceCheckUtils]: 74: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,206 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #100#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,206 INFO L272 TraceCheckUtils]: 76: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,207 INFO L290 TraceCheckUtils]: 77: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,207 INFO L290 TraceCheckUtils]: 78: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,207 INFO L290 TraceCheckUtils]: 79: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,208 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #102#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,208 INFO L272 TraceCheckUtils]: 81: Hoare triple {115410#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,208 INFO L290 TraceCheckUtils]: 82: Hoare triple {115410#(<= ~counter~0 9)} ~cond := #in~cond; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,209 INFO L290 TraceCheckUtils]: 83: Hoare triple {115410#(<= ~counter~0 9)} assume !(0 == ~cond); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,209 INFO L290 TraceCheckUtils]: 84: Hoare triple {115410#(<= ~counter~0 9)} assume true; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,209 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115410#(<= ~counter~0 9)} {115410#(<= ~counter~0 9)} #104#return; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,210 INFO L290 TraceCheckUtils]: 86: Hoare triple {115410#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,210 INFO L290 TraceCheckUtils]: 87: Hoare triple {115410#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115410#(<= ~counter~0 9)} is VALID [2022-04-28 05:55:55,211 INFO L290 TraceCheckUtils]: 88: Hoare triple {115410#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:55:55,211 INFO L290 TraceCheckUtils]: 89: Hoare triple {115483#(<= ~counter~0 10)} assume !!(#t~post7 < 100);havoc #t~post7; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:55:55,212 INFO L290 TraceCheckUtils]: 90: Hoare triple {115483#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:55:55,212 INFO L290 TraceCheckUtils]: 91: Hoare triple {115483#(<= ~counter~0 10)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115483#(<= ~counter~0 10)} is VALID [2022-04-28 05:55:55,212 INFO L290 TraceCheckUtils]: 92: Hoare triple {115483#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115496#(<= |main_#t~post6| 10)} is VALID [2022-04-28 05:55:55,213 INFO L290 TraceCheckUtils]: 93: Hoare triple {115496#(<= |main_#t~post6| 10)} assume !(#t~post6 < 100);havoc #t~post6; {115205#false} is VALID [2022-04-28 05:55:55,213 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {115205#false} is VALID [2022-04-28 05:55:55,213 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 05:55:55,213 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 05:55:55,213 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 05:55:55,213 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 120 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:55:55,213 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:55:55,810 INFO L290 TraceCheckUtils]: 97: Hoare triple {115205#false} assume !false; {115205#false} is VALID [2022-04-28 05:55:55,810 INFO L290 TraceCheckUtils]: 96: Hoare triple {115205#false} assume 0 == ~cond; {115205#false} is VALID [2022-04-28 05:55:55,810 INFO L290 TraceCheckUtils]: 95: Hoare triple {115205#false} ~cond := #in~cond; {115205#false} is VALID [2022-04-28 05:55:55,810 INFO L272 TraceCheckUtils]: 94: Hoare triple {115205#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {115205#false} is VALID [2022-04-28 05:55:55,811 INFO L290 TraceCheckUtils]: 93: Hoare triple {115524#(< |main_#t~post6| 100)} assume !(#t~post6 < 100);havoc #t~post6; {115205#false} is VALID [2022-04-28 05:55:55,811 INFO L290 TraceCheckUtils]: 92: Hoare triple {115528#(< ~counter~0 100)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115524#(< |main_#t~post6| 100)} is VALID [2022-04-28 05:55:55,811 INFO L290 TraceCheckUtils]: 91: Hoare triple {115528#(< ~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; {115528#(< ~counter~0 100)} is VALID [2022-04-28 05:55:55,812 INFO L290 TraceCheckUtils]: 90: Hoare triple {115528#(< ~counter~0 100)} assume !(~c~0 >= ~b~0); {115528#(< ~counter~0 100)} is VALID [2022-04-28 05:55:55,812 INFO L290 TraceCheckUtils]: 89: Hoare triple {115528#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {115528#(< ~counter~0 100)} is VALID [2022-04-28 05:55:55,814 INFO L290 TraceCheckUtils]: 88: Hoare triple {115541#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115528#(< ~counter~0 100)} is VALID [2022-04-28 05:55:55,814 INFO L290 TraceCheckUtils]: 87: Hoare triple {115541#(< ~counter~0 99)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,814 INFO L290 TraceCheckUtils]: 86: Hoare triple {115541#(< ~counter~0 99)} assume !(~c~0 >= 2 * ~v~0); {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,815 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {115204#true} {115541#(< ~counter~0 99)} #104#return; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,815 INFO L290 TraceCheckUtils]: 84: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,815 INFO L290 TraceCheckUtils]: 83: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,815 INFO L290 TraceCheckUtils]: 82: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,815 INFO L272 TraceCheckUtils]: 81: Hoare triple {115541#(< ~counter~0 99)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,815 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {115204#true} {115541#(< ~counter~0 99)} #102#return; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,816 INFO L290 TraceCheckUtils]: 79: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,816 INFO L290 TraceCheckUtils]: 78: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,816 INFO L290 TraceCheckUtils]: 77: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,816 INFO L272 TraceCheckUtils]: 76: Hoare triple {115541#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,816 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {115204#true} {115541#(< ~counter~0 99)} #100#return; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,816 INFO L290 TraceCheckUtils]: 74: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,816 INFO L290 TraceCheckUtils]: 73: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,817 INFO L290 TraceCheckUtils]: 72: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,817 INFO L272 TraceCheckUtils]: 71: Hoare triple {115541#(< ~counter~0 99)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,817 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {115204#true} {115541#(< ~counter~0 99)} #98#return; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,817 INFO L290 TraceCheckUtils]: 69: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,817 INFO L290 TraceCheckUtils]: 68: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,817 INFO L290 TraceCheckUtils]: 67: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,817 INFO L272 TraceCheckUtils]: 66: Hoare triple {115541#(< ~counter~0 99)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,818 INFO L290 TraceCheckUtils]: 65: Hoare triple {115541#(< ~counter~0 99)} assume !!(#t~post8 < 100);havoc #t~post8; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,818 INFO L290 TraceCheckUtils]: 64: Hoare triple {115614#(< ~counter~0 98)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115541#(< ~counter~0 99)} is VALID [2022-04-28 05:55:55,819 INFO L290 TraceCheckUtils]: 63: Hoare triple {115614#(< ~counter~0 98)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115614#(< ~counter~0 98)} is VALID [2022-04-28 05:55:55,819 INFO L290 TraceCheckUtils]: 62: Hoare triple {115614#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {115614#(< ~counter~0 98)} is VALID [2022-04-28 05:55:55,820 INFO L290 TraceCheckUtils]: 61: Hoare triple {115624#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115614#(< ~counter~0 98)} is VALID [2022-04-28 05:55:55,820 INFO L290 TraceCheckUtils]: 60: Hoare triple {115624#(< ~counter~0 97)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115624#(< ~counter~0 97)} is VALID [2022-04-28 05:55:55,820 INFO L290 TraceCheckUtils]: 59: Hoare triple {115624#(< ~counter~0 97)} assume !!(#t~post6 < 100);havoc #t~post6; {115624#(< ~counter~0 97)} is VALID [2022-04-28 05:55:55,821 INFO L290 TraceCheckUtils]: 58: Hoare triple {115634#(< ~counter~0 96)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115624#(< ~counter~0 97)} is VALID [2022-04-28 05:55:55,822 INFO L290 TraceCheckUtils]: 57: Hoare triple {115634#(< ~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; {115634#(< ~counter~0 96)} is VALID [2022-04-28 05:55:55,822 INFO L290 TraceCheckUtils]: 56: Hoare triple {115634#(< ~counter~0 96)} assume !(~c~0 >= ~b~0); {115634#(< ~counter~0 96)} is VALID [2022-04-28 05:55:55,822 INFO L290 TraceCheckUtils]: 55: Hoare triple {115634#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {115634#(< ~counter~0 96)} is VALID [2022-04-28 05:55:55,823 INFO L290 TraceCheckUtils]: 54: Hoare triple {115647#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115634#(< ~counter~0 96)} is VALID [2022-04-28 05:55:55,823 INFO L290 TraceCheckUtils]: 53: Hoare triple {115647#(< ~counter~0 95)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,823 INFO L290 TraceCheckUtils]: 52: Hoare triple {115647#(< ~counter~0 95)} assume !(~c~0 >= 2 * ~v~0); {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,824 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {115204#true} {115647#(< ~counter~0 95)} #104#return; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,824 INFO L290 TraceCheckUtils]: 50: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,824 INFO L290 TraceCheckUtils]: 49: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,824 INFO L290 TraceCheckUtils]: 48: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,824 INFO L272 TraceCheckUtils]: 47: Hoare triple {115647#(< ~counter~0 95)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,825 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {115204#true} {115647#(< ~counter~0 95)} #102#return; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,825 INFO L290 TraceCheckUtils]: 45: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,825 INFO L290 TraceCheckUtils]: 44: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,825 INFO L290 TraceCheckUtils]: 43: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,825 INFO L272 TraceCheckUtils]: 42: Hoare triple {115647#(< ~counter~0 95)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,826 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {115204#true} {115647#(< ~counter~0 95)} #100#return; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,826 INFO L290 TraceCheckUtils]: 40: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,826 INFO L290 TraceCheckUtils]: 39: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,826 INFO L290 TraceCheckUtils]: 38: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,826 INFO L272 TraceCheckUtils]: 37: Hoare triple {115647#(< ~counter~0 95)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,826 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {115204#true} {115647#(< ~counter~0 95)} #98#return; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,826 INFO L290 TraceCheckUtils]: 35: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,826 INFO L290 TraceCheckUtils]: 34: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,827 INFO L290 TraceCheckUtils]: 33: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,827 INFO L272 TraceCheckUtils]: 32: Hoare triple {115647#(< ~counter~0 95)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,827 INFO L290 TraceCheckUtils]: 31: Hoare triple {115647#(< ~counter~0 95)} assume !!(#t~post8 < 100);havoc #t~post8; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,828 INFO L290 TraceCheckUtils]: 30: Hoare triple {115720#(< ~counter~0 94)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {115647#(< ~counter~0 95)} is VALID [2022-04-28 05:55:55,828 INFO L290 TraceCheckUtils]: 29: Hoare triple {115720#(< ~counter~0 94)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {115720#(< ~counter~0 94)} is VALID [2022-04-28 05:55:55,828 INFO L290 TraceCheckUtils]: 28: Hoare triple {115720#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {115720#(< ~counter~0 94)} is VALID [2022-04-28 05:55:55,829 INFO L290 TraceCheckUtils]: 27: Hoare triple {115730#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115720#(< ~counter~0 94)} is VALID [2022-04-28 05:55:55,829 INFO L290 TraceCheckUtils]: 26: Hoare triple {115730#(< ~counter~0 93)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115730#(< ~counter~0 93)} is VALID [2022-04-28 05:55:55,830 INFO L290 TraceCheckUtils]: 25: Hoare triple {115730#(< ~counter~0 93)} assume !!(#t~post6 < 100);havoc #t~post6; {115730#(< ~counter~0 93)} is VALID [2022-04-28 05:55:55,830 INFO L290 TraceCheckUtils]: 24: Hoare triple {115740#(< ~counter~0 92)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115730#(< ~counter~0 93)} is VALID [2022-04-28 05:55:55,831 INFO L290 TraceCheckUtils]: 23: Hoare triple {115740#(< ~counter~0 92)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {115740#(< ~counter~0 92)} is VALID [2022-04-28 05:55:55,831 INFO L290 TraceCheckUtils]: 22: Hoare triple {115740#(< ~counter~0 92)} assume !(~c~0 >= ~b~0); {115740#(< ~counter~0 92)} is VALID [2022-04-28 05:55:55,831 INFO L290 TraceCheckUtils]: 21: Hoare triple {115740#(< ~counter~0 92)} assume !!(#t~post7 < 100);havoc #t~post7; {115740#(< ~counter~0 92)} is VALID [2022-04-28 05:55:55,832 INFO L290 TraceCheckUtils]: 20: Hoare triple {115753#(< ~counter~0 91)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {115740#(< ~counter~0 92)} is VALID [2022-04-28 05:55:55,832 INFO L290 TraceCheckUtils]: 19: Hoare triple {115753#(< ~counter~0 91)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {115753#(< ~counter~0 91)} is VALID [2022-04-28 05:55:55,833 INFO L290 TraceCheckUtils]: 18: Hoare triple {115753#(< ~counter~0 91)} assume !!(#t~post6 < 100);havoc #t~post6; {115753#(< ~counter~0 91)} is VALID [2022-04-28 05:55:55,833 INFO L290 TraceCheckUtils]: 17: Hoare triple {115763#(< ~counter~0 90)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {115753#(< ~counter~0 91)} is VALID [2022-04-28 05:55:55,834 INFO L290 TraceCheckUtils]: 16: Hoare triple {115763#(< ~counter~0 90)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,834 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {115204#true} {115763#(< ~counter~0 90)} #96#return; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,834 INFO L290 TraceCheckUtils]: 12: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,834 INFO L272 TraceCheckUtils]: 11: Hoare triple {115763#(< ~counter~0 90)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,835 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115204#true} {115763#(< ~counter~0 90)} #94#return; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {115204#true} assume true; {115204#true} is VALID [2022-04-28 05:55:55,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {115204#true} assume !(0 == ~cond); {115204#true} is VALID [2022-04-28 05:55:55,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {115204#true} ~cond := #in~cond; {115204#true} is VALID [2022-04-28 05:55:55,835 INFO L272 TraceCheckUtils]: 6: Hoare triple {115763#(< ~counter~0 90)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {115204#true} is VALID [2022-04-28 05:55:55,835 INFO L290 TraceCheckUtils]: 5: Hoare triple {115763#(< ~counter~0 90)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,836 INFO L272 TraceCheckUtils]: 4: Hoare triple {115763#(< ~counter~0 90)} call #t~ret9 := main(); {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115763#(< ~counter~0 90)} {115204#true} #108#return; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,836 INFO L290 TraceCheckUtils]: 2: Hoare triple {115763#(< ~counter~0 90)} assume true; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {115204#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {115763#(< ~counter~0 90)} is VALID [2022-04-28 05:55:55,837 INFO L272 TraceCheckUtils]: 0: Hoare triple {115204#true} call ULTIMATE.init(); {115204#true} is VALID [2022-04-28 05:55:55,837 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 16 proven. 56 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:55:55,837 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:55:55,837 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1743510417] [2022-04-28 05:55:55,837 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:55:55,837 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2002762515] [2022-04-28 05:55:55,837 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2002762515] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:55:55,838 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:55:55,838 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 05:55:55,838 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:55:55,838 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [259827345] [2022-04-28 05:55:55,838 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [259827345] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:55:55,838 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:55:55,838 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:55:55,838 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [891278862] [2022-04-28 05:55:55,838 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:55:55,838 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 05:55:55,839 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:55:55,839 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:55:55,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:55:55,907 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:55:55,907 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:55:55,908 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:55:55,908 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:55:55,908 INFO L87 Difference]: Start difference. First operand 1164 states and 1539 transitions. Second operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:00,793 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:00,793 INFO L93 Difference]: Finished difference Result 1434 states and 1877 transitions. [2022-04-28 05:56:00,793 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 05:56:00,793 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 98 [2022-04-28 05:56:00,793 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:00,794 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:00,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 05:56:00,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:00,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 266 transitions. [2022-04-28 05:56:00,797 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 266 transitions. [2022-04-28 05:56:01,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 266 edges. 266 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:01,126 INFO L225 Difference]: With dead ends: 1434 [2022-04-28 05:56:01,126 INFO L226 Difference]: Without dead ends: 1427 [2022-04-28 05:56:01,126 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 203 GetRequests, 171 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 61 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=468, Invalid=654, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 05:56:01,127 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 243 mSDsluCounter, 256 mSDsCounter, 0 mSdLazyCounter, 179 mSolverCounterSat, 156 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 243 SdHoareTripleChecker+Valid, 333 SdHoareTripleChecker+Invalid, 335 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 156 IncrementalHoareTripleChecker+Valid, 179 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:01,127 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [243 Valid, 333 Invalid, 335 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [156 Valid, 179 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:56:01,127 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1427 states. [2022-04-28 05:56:04,704 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1427 to 1358. [2022-04-28 05:56:04,705 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:04,706 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:04,707 INFO L74 IsIncluded]: Start isIncluded. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:04,707 INFO L87 Difference]: Start difference. First operand 1427 states. Second operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:04,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:04,760 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 05:56:04,760 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 05:56:04,762 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:04,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:04,762 INFO L74 IsIncluded]: Start isIncluded. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 05:56:04,763 INFO L87 Difference]: Start difference. First operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) Second operand 1427 states. [2022-04-28 05:56:04,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:04,824 INFO L93 Difference]: Finished difference Result 1427 states and 1863 transitions. [2022-04-28 05:56:04,825 INFO L276 IsEmpty]: Start isEmpty. Operand 1427 states and 1863 transitions. [2022-04-28 05:56:04,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:04,826 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:04,826 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:04,826 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:04,827 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1358 states, 940 states have (on average 1.2446808510638299) internal successors, (1170), 965 states have internal predecessors, (1170), 311 states have call successors, (311), 107 states have call predecessors, (311), 106 states have return successors, (305), 285 states have call predecessors, (305), 305 states have call successors, (305) [2022-04-28 05:56:04,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1358 states to 1358 states and 1786 transitions. [2022-04-28 05:56:04,903 INFO L78 Accepts]: Start accepts. Automaton has 1358 states and 1786 transitions. Word has length 98 [2022-04-28 05:56:04,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:04,904 INFO L495 AbstractCegarLoop]: Abstraction has 1358 states and 1786 transitions. [2022-04-28 05:56:04,904 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 3.7857142857142856) internal successors, (53), 13 states have internal predecessors, (53), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:04,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1358 states and 1786 transitions. [2022-04-28 05:56:08,864 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1786 edges. 1786 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:08,865 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1786 transitions. [2022-04-28 05:56:08,866 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 100 [2022-04-28 05:56:08,866 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:08,866 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 5, 4, 4, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:08,882 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:09,066 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-28 05:56:09,066 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:09,067 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:09,067 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 1 times [2022-04-28 05:56:09,067 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:09,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [555701511] [2022-04-28 05:56:09,067 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:09,067 INFO L85 PathProgramCache]: Analyzing trace with hash -1348351390, now seen corresponding path program 2 times [2022-04-28 05:56:09,067 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:09,067 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1624632591] [2022-04-28 05:56:09,067 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:09,067 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:09,081 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:09,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1087771809] [2022-04-28 05:56:09,081 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:56:09,081 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:09,081 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:09,082 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:09,084 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-28 05:56:09,150 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:56:09,150 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:09,151 INFO L263 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 23 conjunts are in the unsatisfiable core [2022-04-28 05:56:09,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:09,177 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:09,636 INFO L272 TraceCheckUtils]: 0: Hoare triple {124271#true} call ULTIMATE.init(); {124271#true} is VALID [2022-04-28 05:56:09,637 INFO L290 TraceCheckUtils]: 1: Hoare triple {124271#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,637 INFO L290 TraceCheckUtils]: 2: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,637 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124279#(<= ~counter~0 0)} {124271#true} #108#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,638 INFO L272 TraceCheckUtils]: 4: Hoare triple {124279#(<= ~counter~0 0)} call #t~ret9 := main(); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,638 INFO L290 TraceCheckUtils]: 5: Hoare triple {124279#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,638 INFO L272 TraceCheckUtils]: 6: Hoare triple {124279#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,638 INFO L290 TraceCheckUtils]: 7: Hoare triple {124279#(<= ~counter~0 0)} ~cond := #in~cond; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,639 INFO L290 TraceCheckUtils]: 8: Hoare triple {124279#(<= ~counter~0 0)} assume !(0 == ~cond); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,639 INFO L290 TraceCheckUtils]: 9: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,639 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124279#(<= ~counter~0 0)} {124279#(<= ~counter~0 0)} #94#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,640 INFO L272 TraceCheckUtils]: 11: Hoare triple {124279#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,640 INFO L290 TraceCheckUtils]: 12: Hoare triple {124279#(<= ~counter~0 0)} ~cond := #in~cond; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,640 INFO L290 TraceCheckUtils]: 13: Hoare triple {124279#(<= ~counter~0 0)} assume !(0 == ~cond); {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,641 INFO L290 TraceCheckUtils]: 14: Hoare triple {124279#(<= ~counter~0 0)} assume true; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,641 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124279#(<= ~counter~0 0)} {124279#(<= ~counter~0 0)} #96#return; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,641 INFO L290 TraceCheckUtils]: 16: Hoare triple {124279#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124279#(<= ~counter~0 0)} is VALID [2022-04-28 05:56:09,643 INFO L290 TraceCheckUtils]: 17: Hoare triple {124279#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:09,643 INFO L290 TraceCheckUtils]: 18: Hoare triple {124328#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:09,644 INFO L290 TraceCheckUtils]: 19: Hoare triple {124328#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124328#(<= ~counter~0 1)} is VALID [2022-04-28 05:56:09,646 INFO L290 TraceCheckUtils]: 20: Hoare triple {124328#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:09,647 INFO L290 TraceCheckUtils]: 21: Hoare triple {124338#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:09,647 INFO L290 TraceCheckUtils]: 22: Hoare triple {124338#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:09,647 INFO L290 TraceCheckUtils]: 23: Hoare triple {124338#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124338#(<= ~counter~0 2)} is VALID [2022-04-28 05:56:09,648 INFO L290 TraceCheckUtils]: 24: Hoare triple {124338#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:09,648 INFO L290 TraceCheckUtils]: 25: Hoare triple {124351#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:09,649 INFO L290 TraceCheckUtils]: 26: Hoare triple {124351#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124351#(<= ~counter~0 3)} is VALID [2022-04-28 05:56:09,650 INFO L290 TraceCheckUtils]: 27: Hoare triple {124351#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:09,650 INFO L290 TraceCheckUtils]: 28: Hoare triple {124361#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:09,650 INFO L290 TraceCheckUtils]: 29: Hoare triple {124361#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124361#(<= ~counter~0 4)} is VALID [2022-04-28 05:56:09,651 INFO L290 TraceCheckUtils]: 30: Hoare triple {124361#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,651 INFO L290 TraceCheckUtils]: 31: Hoare triple {124371#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,652 INFO L272 TraceCheckUtils]: 32: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,652 INFO L290 TraceCheckUtils]: 33: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,652 INFO L290 TraceCheckUtils]: 34: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,653 INFO L290 TraceCheckUtils]: 35: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,653 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #98#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,654 INFO L272 TraceCheckUtils]: 37: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,654 INFO L290 TraceCheckUtils]: 38: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,654 INFO L290 TraceCheckUtils]: 39: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,655 INFO L290 TraceCheckUtils]: 40: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,655 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #100#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,656 INFO L272 TraceCheckUtils]: 42: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,656 INFO L290 TraceCheckUtils]: 43: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,656 INFO L290 TraceCheckUtils]: 44: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,656 INFO L290 TraceCheckUtils]: 45: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,657 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #102#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,657 INFO L272 TraceCheckUtils]: 47: Hoare triple {124371#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,658 INFO L290 TraceCheckUtils]: 48: Hoare triple {124371#(<= ~counter~0 5)} ~cond := #in~cond; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,658 INFO L290 TraceCheckUtils]: 49: Hoare triple {124371#(<= ~counter~0 5)} assume !(0 == ~cond); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,658 INFO L290 TraceCheckUtils]: 50: Hoare triple {124371#(<= ~counter~0 5)} assume true; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,659 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124371#(<= ~counter~0 5)} {124371#(<= ~counter~0 5)} #104#return; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,659 INFO L290 TraceCheckUtils]: 52: Hoare triple {124371#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,659 INFO L290 TraceCheckUtils]: 53: Hoare triple {124371#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124371#(<= ~counter~0 5)} is VALID [2022-04-28 05:56:09,660 INFO L290 TraceCheckUtils]: 54: Hoare triple {124371#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:09,660 INFO L290 TraceCheckUtils]: 55: Hoare triple {124444#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:09,661 INFO L290 TraceCheckUtils]: 56: Hoare triple {124444#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:09,661 INFO L290 TraceCheckUtils]: 57: Hoare triple {124444#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124444#(<= ~counter~0 6)} is VALID [2022-04-28 05:56:09,662 INFO L290 TraceCheckUtils]: 58: Hoare triple {124444#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:09,662 INFO L290 TraceCheckUtils]: 59: Hoare triple {124457#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:09,662 INFO L290 TraceCheckUtils]: 60: Hoare triple {124457#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124457#(<= ~counter~0 7)} is VALID [2022-04-28 05:56:09,663 INFO L290 TraceCheckUtils]: 61: Hoare triple {124457#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:09,664 INFO L290 TraceCheckUtils]: 62: Hoare triple {124467#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:09,664 INFO L290 TraceCheckUtils]: 63: Hoare triple {124467#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124467#(<= ~counter~0 8)} is VALID [2022-04-28 05:56:09,665 INFO L290 TraceCheckUtils]: 64: Hoare triple {124467#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,665 INFO L290 TraceCheckUtils]: 65: Hoare triple {124477#(<= ~counter~0 9)} assume !!(#t~post8 < 100);havoc #t~post8; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,666 INFO L272 TraceCheckUtils]: 66: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,666 INFO L290 TraceCheckUtils]: 67: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,666 INFO L290 TraceCheckUtils]: 68: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,666 INFO L290 TraceCheckUtils]: 69: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,667 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #98#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,667 INFO L272 TraceCheckUtils]: 71: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,668 INFO L290 TraceCheckUtils]: 72: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,668 INFO L290 TraceCheckUtils]: 73: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,668 INFO L290 TraceCheckUtils]: 74: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,669 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #100#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,669 INFO L272 TraceCheckUtils]: 76: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,670 INFO L290 TraceCheckUtils]: 77: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,670 INFO L290 TraceCheckUtils]: 78: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,670 INFO L290 TraceCheckUtils]: 79: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,671 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #102#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,671 INFO L272 TraceCheckUtils]: 81: Hoare triple {124477#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,671 INFO L290 TraceCheckUtils]: 82: Hoare triple {124477#(<= ~counter~0 9)} ~cond := #in~cond; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,672 INFO L290 TraceCheckUtils]: 83: Hoare triple {124477#(<= ~counter~0 9)} assume !(0 == ~cond); {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,672 INFO L290 TraceCheckUtils]: 84: Hoare triple {124477#(<= ~counter~0 9)} assume true; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,672 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124477#(<= ~counter~0 9)} {124477#(<= ~counter~0 9)} #104#return; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,673 INFO L290 TraceCheckUtils]: 86: Hoare triple {124477#(<= ~counter~0 9)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124477#(<= ~counter~0 9)} is VALID [2022-04-28 05:56:09,673 INFO L290 TraceCheckUtils]: 87: Hoare triple {124477#(<= ~counter~0 9)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124547#(<= |main_#t~post8| 9)} is VALID [2022-04-28 05:56:09,673 INFO L290 TraceCheckUtils]: 88: Hoare triple {124547#(<= |main_#t~post8| 9)} assume !(#t~post8 < 100);havoc #t~post8; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 89: Hoare triple {124272#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 90: Hoare triple {124272#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 91: Hoare triple {124272#false} assume !(#t~post7 < 100);havoc #t~post7; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 92: Hoare triple {124272#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 93: Hoare triple {124272#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 94: Hoare triple {124272#false} assume !(#t~post6 < 100);havoc #t~post6; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L272 TraceCheckUtils]: 95: Hoare triple {124272#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 96: Hoare triple {124272#false} ~cond := #in~cond; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 97: Hoare triple {124272#false} assume 0 == ~cond; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L290 TraceCheckUtils]: 98: Hoare triple {124272#false} assume !false; {124272#false} is VALID [2022-04-28 05:56:09,674 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 103 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:56:09,675 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:10,235 INFO L290 TraceCheckUtils]: 98: Hoare triple {124272#false} assume !false; {124272#false} is VALID [2022-04-28 05:56:10,235 INFO L290 TraceCheckUtils]: 97: Hoare triple {124272#false} assume 0 == ~cond; {124272#false} is VALID [2022-04-28 05:56:10,235 INFO L290 TraceCheckUtils]: 96: Hoare triple {124272#false} ~cond := #in~cond; {124272#false} is VALID [2022-04-28 05:56:10,235 INFO L272 TraceCheckUtils]: 95: Hoare triple {124272#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {124272#false} is VALID [2022-04-28 05:56:10,236 INFO L290 TraceCheckUtils]: 94: Hoare triple {124272#false} assume !(#t~post6 < 100);havoc #t~post6; {124272#false} is VALID [2022-04-28 05:56:10,236 INFO L290 TraceCheckUtils]: 93: Hoare triple {124272#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124272#false} is VALID [2022-04-28 05:56:10,236 INFO L290 TraceCheckUtils]: 92: Hoare triple {124272#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124272#false} is VALID [2022-04-28 05:56:10,236 INFO L290 TraceCheckUtils]: 91: Hoare triple {124272#false} assume !(#t~post7 < 100);havoc #t~post7; {124272#false} is VALID [2022-04-28 05:56:10,236 INFO L290 TraceCheckUtils]: 90: Hoare triple {124272#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124272#false} is VALID [2022-04-28 05:56:10,236 INFO L290 TraceCheckUtils]: 89: Hoare triple {124272#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124272#false} is VALID [2022-04-28 05:56:10,237 INFO L290 TraceCheckUtils]: 88: Hoare triple {124611#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {124272#false} is VALID [2022-04-28 05:56:10,238 INFO L290 TraceCheckUtils]: 87: Hoare triple {124615#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124611#(< |main_#t~post8| 100)} is VALID [2022-04-28 05:56:10,238 INFO L290 TraceCheckUtils]: 86: Hoare triple {124615#(< ~counter~0 100)} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,238 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {124271#true} {124615#(< ~counter~0 100)} #104#return; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,238 INFO L290 TraceCheckUtils]: 84: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,239 INFO L290 TraceCheckUtils]: 83: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,239 INFO L290 TraceCheckUtils]: 82: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,239 INFO L272 TraceCheckUtils]: 81: Hoare triple {124615#(< ~counter~0 100)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,252 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {124271#true} {124615#(< ~counter~0 100)} #102#return; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,252 INFO L290 TraceCheckUtils]: 79: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,252 INFO L290 TraceCheckUtils]: 78: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,252 INFO L290 TraceCheckUtils]: 77: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,252 INFO L272 TraceCheckUtils]: 76: Hoare triple {124615#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,253 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {124271#true} {124615#(< ~counter~0 100)} #100#return; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,254 INFO L290 TraceCheckUtils]: 74: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,254 INFO L290 TraceCheckUtils]: 73: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,254 INFO L290 TraceCheckUtils]: 72: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,254 INFO L272 TraceCheckUtils]: 71: Hoare triple {124615#(< ~counter~0 100)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,255 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {124271#true} {124615#(< ~counter~0 100)} #98#return; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,255 INFO L290 TraceCheckUtils]: 69: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,255 INFO L290 TraceCheckUtils]: 68: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,255 INFO L290 TraceCheckUtils]: 67: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,255 INFO L272 TraceCheckUtils]: 66: Hoare triple {124615#(< ~counter~0 100)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,256 INFO L290 TraceCheckUtils]: 65: Hoare triple {124615#(< ~counter~0 100)} assume !!(#t~post8 < 100);havoc #t~post8; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,258 INFO L290 TraceCheckUtils]: 64: Hoare triple {124685#(< ~counter~0 99)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124615#(< ~counter~0 100)} is VALID [2022-04-28 05:56:10,259 INFO L290 TraceCheckUtils]: 63: Hoare triple {124685#(< ~counter~0 99)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124685#(< ~counter~0 99)} is VALID [2022-04-28 05:56:10,259 INFO L290 TraceCheckUtils]: 62: Hoare triple {124685#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {124685#(< ~counter~0 99)} is VALID [2022-04-28 05:56:10,260 INFO L290 TraceCheckUtils]: 61: Hoare triple {124695#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124685#(< ~counter~0 99)} is VALID [2022-04-28 05:56:10,261 INFO L290 TraceCheckUtils]: 60: Hoare triple {124695#(< ~counter~0 98)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124695#(< ~counter~0 98)} is VALID [2022-04-28 05:56:10,261 INFO L290 TraceCheckUtils]: 59: Hoare triple {124695#(< ~counter~0 98)} assume !!(#t~post6 < 100);havoc #t~post6; {124695#(< ~counter~0 98)} is VALID [2022-04-28 05:56:10,262 INFO L290 TraceCheckUtils]: 58: Hoare triple {124705#(< ~counter~0 97)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124695#(< ~counter~0 98)} is VALID [2022-04-28 05:56:10,263 INFO L290 TraceCheckUtils]: 57: Hoare triple {124705#(< ~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; {124705#(< ~counter~0 97)} is VALID [2022-04-28 05:56:10,263 INFO L290 TraceCheckUtils]: 56: Hoare triple {124705#(< ~counter~0 97)} assume !(~c~0 >= ~b~0); {124705#(< ~counter~0 97)} is VALID [2022-04-28 05:56:10,264 INFO L290 TraceCheckUtils]: 55: Hoare triple {124705#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {124705#(< ~counter~0 97)} is VALID [2022-04-28 05:56:10,265 INFO L290 TraceCheckUtils]: 54: Hoare triple {124718#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124705#(< ~counter~0 97)} is VALID [2022-04-28 05:56:10,265 INFO L290 TraceCheckUtils]: 53: Hoare triple {124718#(< ~counter~0 96)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,265 INFO L290 TraceCheckUtils]: 52: Hoare triple {124718#(< ~counter~0 96)} assume !(~c~0 >= 2 * ~v~0); {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,266 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {124271#true} {124718#(< ~counter~0 96)} #104#return; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,266 INFO L290 TraceCheckUtils]: 50: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,266 INFO L290 TraceCheckUtils]: 49: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,266 INFO L290 TraceCheckUtils]: 48: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,266 INFO L272 TraceCheckUtils]: 47: Hoare triple {124718#(< ~counter~0 96)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,267 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {124271#true} {124718#(< ~counter~0 96)} #102#return; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,267 INFO L290 TraceCheckUtils]: 45: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,267 INFO L290 TraceCheckUtils]: 44: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,267 INFO L290 TraceCheckUtils]: 43: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,267 INFO L272 TraceCheckUtils]: 42: Hoare triple {124718#(< ~counter~0 96)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,268 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {124271#true} {124718#(< ~counter~0 96)} #100#return; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,268 INFO L290 TraceCheckUtils]: 40: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,268 INFO L290 TraceCheckUtils]: 39: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,268 INFO L290 TraceCheckUtils]: 38: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,269 INFO L272 TraceCheckUtils]: 37: Hoare triple {124718#(< ~counter~0 96)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,269 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {124271#true} {124718#(< ~counter~0 96)} #98#return; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,269 INFO L290 TraceCheckUtils]: 35: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,269 INFO L290 TraceCheckUtils]: 34: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,270 INFO L290 TraceCheckUtils]: 33: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,270 INFO L272 TraceCheckUtils]: 32: Hoare triple {124718#(< ~counter~0 96)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,270 INFO L290 TraceCheckUtils]: 31: Hoare triple {124718#(< ~counter~0 96)} assume !!(#t~post8 < 100);havoc #t~post8; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {124791#(< ~counter~0 95)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {124718#(< ~counter~0 96)} is VALID [2022-04-28 05:56:10,272 INFO L290 TraceCheckUtils]: 29: Hoare triple {124791#(< ~counter~0 95)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {124791#(< ~counter~0 95)} is VALID [2022-04-28 05:56:10,272 INFO L290 TraceCheckUtils]: 28: Hoare triple {124791#(< ~counter~0 95)} assume !!(#t~post7 < 100);havoc #t~post7; {124791#(< ~counter~0 95)} is VALID [2022-04-28 05:56:10,273 INFO L290 TraceCheckUtils]: 27: Hoare triple {124801#(< ~counter~0 94)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124791#(< ~counter~0 95)} is VALID [2022-04-28 05:56:10,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {124801#(< ~counter~0 94)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124801#(< ~counter~0 94)} is VALID [2022-04-28 05:56:10,274 INFO L290 TraceCheckUtils]: 25: Hoare triple {124801#(< ~counter~0 94)} assume !!(#t~post6 < 100);havoc #t~post6; {124801#(< ~counter~0 94)} is VALID [2022-04-28 05:56:10,275 INFO L290 TraceCheckUtils]: 24: Hoare triple {124811#(< ~counter~0 93)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124801#(< ~counter~0 94)} is VALID [2022-04-28 05:56:10,275 INFO L290 TraceCheckUtils]: 23: Hoare triple {124811#(< ~counter~0 93)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {124811#(< ~counter~0 93)} is VALID [2022-04-28 05:56:10,275 INFO L290 TraceCheckUtils]: 22: Hoare triple {124811#(< ~counter~0 93)} assume !(~c~0 >= ~b~0); {124811#(< ~counter~0 93)} is VALID [2022-04-28 05:56:10,276 INFO L290 TraceCheckUtils]: 21: Hoare triple {124811#(< ~counter~0 93)} assume !!(#t~post7 < 100);havoc #t~post7; {124811#(< ~counter~0 93)} is VALID [2022-04-28 05:56:10,277 INFO L290 TraceCheckUtils]: 20: Hoare triple {124824#(< ~counter~0 92)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {124811#(< ~counter~0 93)} is VALID [2022-04-28 05:56:10,277 INFO L290 TraceCheckUtils]: 19: Hoare triple {124824#(< ~counter~0 92)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {124824#(< ~counter~0 92)} is VALID [2022-04-28 05:56:10,277 INFO L290 TraceCheckUtils]: 18: Hoare triple {124824#(< ~counter~0 92)} assume !!(#t~post6 < 100);havoc #t~post6; {124824#(< ~counter~0 92)} is VALID [2022-04-28 05:56:10,279 INFO L290 TraceCheckUtils]: 17: Hoare triple {124834#(< ~counter~0 91)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {124824#(< ~counter~0 92)} is VALID [2022-04-28 05:56:10,279 INFO L290 TraceCheckUtils]: 16: Hoare triple {124834#(< ~counter~0 91)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,279 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {124271#true} {124834#(< ~counter~0 91)} #96#return; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,280 INFO L290 TraceCheckUtils]: 14: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,280 INFO L290 TraceCheckUtils]: 13: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,280 INFO L290 TraceCheckUtils]: 12: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,280 INFO L272 TraceCheckUtils]: 11: Hoare triple {124834#(< ~counter~0 91)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,280 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124271#true} {124834#(< ~counter~0 91)} #94#return; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,280 INFO L290 TraceCheckUtils]: 9: Hoare triple {124271#true} assume true; {124271#true} is VALID [2022-04-28 05:56:10,281 INFO L290 TraceCheckUtils]: 8: Hoare triple {124271#true} assume !(0 == ~cond); {124271#true} is VALID [2022-04-28 05:56:10,281 INFO L290 TraceCheckUtils]: 7: Hoare triple {124271#true} ~cond := #in~cond; {124271#true} is VALID [2022-04-28 05:56:10,281 INFO L272 TraceCheckUtils]: 6: Hoare triple {124834#(< ~counter~0 91)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {124271#true} is VALID [2022-04-28 05:56:10,281 INFO L290 TraceCheckUtils]: 5: Hoare triple {124834#(< ~counter~0 91)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,281 INFO L272 TraceCheckUtils]: 4: Hoare triple {124834#(< ~counter~0 91)} call #t~ret9 := main(); {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,282 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124834#(< ~counter~0 91)} {124271#true} #108#return; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,282 INFO L290 TraceCheckUtils]: 2: Hoare triple {124834#(< ~counter~0 91)} assume true; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,283 INFO L290 TraceCheckUtils]: 1: Hoare triple {124271#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {124834#(< ~counter~0 91)} is VALID [2022-04-28 05:56:10,283 INFO L272 TraceCheckUtils]: 0: Hoare triple {124271#true} call ULTIMATE.init(); {124271#true} is VALID [2022-04-28 05:56:10,283 INFO L134 CoverageAnalysis]: Checked inductivity of 188 backedges. 33 proven. 39 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:56:10,283 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:10,283 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1624632591] [2022-04-28 05:56:10,284 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:10,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1087771809] [2022-04-28 05:56:10,284 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1087771809] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:56:10,284 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:56:10,284 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13] total 24 [2022-04-28 05:56:10,284 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:10,284 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [555701511] [2022-04-28 05:56:10,284 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [555701511] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:10,284 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:10,284 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:56:10,285 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1782211605] [2022-04-28 05:56:10,285 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:10,285 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 05:56:10,285 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:10,285 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:10,370 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 05:56:10,370 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:56:10,371 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:10,371 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:56:10,371 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=316, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:56:10,371 INFO L87 Difference]: Start difference. First operand 1358 states and 1786 transitions. Second operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:15,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:15,015 INFO L93 Difference]: Finished difference Result 1838 states and 2503 transitions. [2022-04-28 05:56:15,015 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 05:56:15,015 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 99 [2022-04-28 05:56:15,015 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:15,015 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:15,017 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:56:15,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:15,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 261 transitions. [2022-04-28 05:56:15,018 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 261 transitions. [2022-04-28 05:56:15,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 261 edges. 261 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:15,333 INFO L225 Difference]: With dead ends: 1838 [2022-04-28 05:56:15,333 INFO L226 Difference]: Without dead ends: 1358 [2022-04-28 05:56:15,335 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 204 GetRequests, 175 SyntacticMatches, 0 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=383, Invalid=547, Unknown=0, NotChecked=0, Total=930 [2022-04-28 05:56:15,335 INFO L413 NwaCegarLoop]: 72 mSDtfsCounter, 227 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 148 mSolverCounterSat, 111 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 227 SdHoareTripleChecker+Valid, 296 SdHoareTripleChecker+Invalid, 259 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 111 IncrementalHoareTripleChecker+Valid, 148 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:15,335 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [227 Valid, 296 Invalid, 259 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [111 Valid, 148 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:56:15,336 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1358 states. [2022-04-28 05:56:18,897 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1358 to 1334. [2022-04-28 05:56:18,897 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:18,898 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:18,899 INFO L74 IsIncluded]: Start isIncluded. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:18,900 INFO L87 Difference]: Start difference. First operand 1358 states. Second operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:18,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:18,950 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 05:56:18,950 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 05:56:18,952 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:18,952 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:18,953 INFO L74 IsIncluded]: Start isIncluded. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 05:56:18,954 INFO L87 Difference]: Start difference. First operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) Second operand 1358 states. [2022-04-28 05:56:19,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:19,005 INFO L93 Difference]: Finished difference Result 1358 states and 1763 transitions. [2022-04-28 05:56:19,005 INFO L276 IsEmpty]: Start isEmpty. Operand 1358 states and 1763 transitions. [2022-04-28 05:56:19,006 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:19,006 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:19,006 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:19,006 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:19,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1334 states, 924 states have (on average 1.2272727272727273) internal successors, (1134), 948 states have internal predecessors, (1134), 304 states have call successors, (304), 106 states have call predecessors, (304), 105 states have return successors, (298), 279 states have call predecessors, (298), 298 states have call successors, (298) [2022-04-28 05:56:19,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1334 states to 1334 states and 1736 transitions. [2022-04-28 05:56:19,090 INFO L78 Accepts]: Start accepts. Automaton has 1334 states and 1736 transitions. Word has length 99 [2022-04-28 05:56:19,090 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:19,090 INFO L495 AbstractCegarLoop]: Abstraction has 1334 states and 1736 transitions. [2022-04-28 05:56:19,091 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 4.153846153846154) internal successors, (54), 12 states have internal predecessors, (54), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:56:19,091 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1334 states and 1736 transitions. [2022-04-28 05:56:22,959 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1736 edges. 1736 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:22,959 INFO L276 IsEmpty]: Start isEmpty. Operand 1334 states and 1736 transitions. [2022-04-28 05:56:22,960 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 05:56:22,960 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:22,960 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:22,976 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:23,160 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-28 05:56:23,161 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:23,161 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:23,161 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 5 times [2022-04-28 05:56:23,161 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:23,161 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [77844976] [2022-04-28 05:56:23,161 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:23,162 INFO L85 PathProgramCache]: Analyzing trace with hash -1350164207, now seen corresponding path program 6 times [2022-04-28 05:56:23,162 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:23,162 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [474806980] [2022-04-28 05:56:23,162 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:23,162 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:23,172 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:23,172 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [7110270] [2022-04-28 05:56:23,172 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:56:23,172 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:23,172 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:23,173 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:23,174 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-28 05:56:23,278 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-28 05:56:23,279 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:23,280 INFO L263 TraceCheckSpWp]: Trace formula consists of 242 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-28 05:56:23,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:23,304 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:56:24,391 INFO L272 TraceCheckUtils]: 0: Hoare triple {133962#true} call ULTIMATE.init(); {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L290 TraceCheckUtils]: 1: Hoare triple {133962#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L290 TraceCheckUtils]: 2: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133962#true} {133962#true} #108#return; {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L272 TraceCheckUtils]: 4: Hoare triple {133962#true} call #t~ret9 := main(); {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L290 TraceCheckUtils]: 5: Hoare triple {133962#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L272 TraceCheckUtils]: 6: Hoare triple {133962#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L290 TraceCheckUtils]: 7: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L290 TraceCheckUtils]: 8: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,391 INFO L290 TraceCheckUtils]: 9: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,392 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133962#true} {133962#true} #94#return; {133962#true} is VALID [2022-04-28 05:56:24,392 INFO L272 TraceCheckUtils]: 11: Hoare triple {133962#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,392 INFO L290 TraceCheckUtils]: 12: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,392 INFO L290 TraceCheckUtils]: 13: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,392 INFO L290 TraceCheckUtils]: 14: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,392 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {133962#true} {133962#true} #96#return; {133962#true} is VALID [2022-04-28 05:56:24,407 INFO L290 TraceCheckUtils]: 16: Hoare triple {133962#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,407 INFO L290 TraceCheckUtils]: 17: Hoare triple {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,408 INFO L290 TraceCheckUtils]: 18: Hoare triple {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,408 INFO L290 TraceCheckUtils]: 19: Hoare triple {134015#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,409 INFO L290 TraceCheckUtils]: 20: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,409 INFO L290 TraceCheckUtils]: 21: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,410 INFO L290 TraceCheckUtils]: 22: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,411 INFO L290 TraceCheckUtils]: 23: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,411 INFO L290 TraceCheckUtils]: 24: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,411 INFO L272 TraceCheckUtils]: 25: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,411 INFO L290 TraceCheckUtils]: 26: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,411 INFO L290 TraceCheckUtils]: 27: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,411 INFO L290 TraceCheckUtils]: 28: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,412 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,412 INFO L272 TraceCheckUtils]: 30: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,413 INFO L290 TraceCheckUtils]: 31: Hoare triple {133962#true} ~cond := #in~cond; {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:24,413 INFO L290 TraceCheckUtils]: 32: Hoare triple {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:24,413 INFO L290 TraceCheckUtils]: 33: Hoare triple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:24,414 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,414 INFO L272 TraceCheckUtils]: 35: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,414 INFO L290 TraceCheckUtils]: 36: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,415 INFO L290 TraceCheckUtils]: 37: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,415 INFO L290 TraceCheckUtils]: 38: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,416 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,416 INFO L272 TraceCheckUtils]: 40: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,416 INFO L290 TraceCheckUtils]: 41: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,416 INFO L290 TraceCheckUtils]: 42: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,416 INFO L290 TraceCheckUtils]: 43: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,417 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,417 INFO L290 TraceCheckUtils]: 45: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,418 INFO L290 TraceCheckUtils]: 46: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,418 INFO L290 TraceCheckUtils]: 47: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,418 INFO L272 TraceCheckUtils]: 48: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,419 INFO L290 TraceCheckUtils]: 49: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,419 INFO L290 TraceCheckUtils]: 50: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,419 INFO L290 TraceCheckUtils]: 51: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,420 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,420 INFO L272 TraceCheckUtils]: 53: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,420 INFO L290 TraceCheckUtils]: 54: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,420 INFO L290 TraceCheckUtils]: 55: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,420 INFO L290 TraceCheckUtils]: 56: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,421 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,421 INFO L272 TraceCheckUtils]: 58: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,421 INFO L290 TraceCheckUtils]: 59: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,421 INFO L290 TraceCheckUtils]: 60: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,421 INFO L290 TraceCheckUtils]: 61: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,422 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,422 INFO L272 TraceCheckUtils]: 63: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,422 INFO L290 TraceCheckUtils]: 64: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,422 INFO L290 TraceCheckUtils]: 65: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,422 INFO L290 TraceCheckUtils]: 66: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,423 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,424 INFO L290 TraceCheckUtils]: 68: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,424 INFO L290 TraceCheckUtils]: 69: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,425 INFO L290 TraceCheckUtils]: 70: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,425 INFO L272 TraceCheckUtils]: 71: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,425 INFO L290 TraceCheckUtils]: 72: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,425 INFO L290 TraceCheckUtils]: 73: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,425 INFO L290 TraceCheckUtils]: 74: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,426 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #98#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,426 INFO L272 TraceCheckUtils]: 76: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,426 INFO L290 TraceCheckUtils]: 77: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,426 INFO L290 TraceCheckUtils]: 78: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,426 INFO L290 TraceCheckUtils]: 79: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,427 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #100#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,427 INFO L272 TraceCheckUtils]: 81: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,427 INFO L290 TraceCheckUtils]: 82: Hoare triple {133962#true} ~cond := #in~cond; {133962#true} is VALID [2022-04-28 05:56:24,427 INFO L290 TraceCheckUtils]: 83: Hoare triple {133962#true} assume !(0 == ~cond); {133962#true} is VALID [2022-04-28 05:56:24,427 INFO L290 TraceCheckUtils]: 84: Hoare triple {133962#true} assume true; {133962#true} is VALID [2022-04-28 05:56:24,428 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {133962#true} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #102#return; {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,428 INFO L272 TraceCheckUtils]: 86: Hoare triple {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {133962#true} is VALID [2022-04-28 05:56:24,429 INFO L290 TraceCheckUtils]: 87: Hoare triple {133962#true} ~cond := #in~cond; {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:24,429 INFO L290 TraceCheckUtils]: 88: Hoare triple {134062#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:24,429 INFO L290 TraceCheckUtils]: 89: Hoare triple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:56:24,431 INFO L284 TraceCheckUtils]: 90: Hoare quadruple {134066#(not (= |__VERIFIER_assert_#in~cond| 0))} {134025#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} #104#return; {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,431 INFO L290 TraceCheckUtils]: 91: Hoare triple {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,436 INFO L290 TraceCheckUtils]: 92: Hoare triple {134241#(and (= main_~v~0 (* main_~d~0 main_~b~0)) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,437 INFO L290 TraceCheckUtils]: 93: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,437 INFO L290 TraceCheckUtils]: 94: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,438 INFO L290 TraceCheckUtils]: 95: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:56:24,441 INFO L290 TraceCheckUtils]: 96: Hoare triple {134248#(and (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:24,441 INFO L290 TraceCheckUtils]: 97: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:24,442 INFO L290 TraceCheckUtils]: 98: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:24,442 INFO L290 TraceCheckUtils]: 99: Hoare triple {134261#(and (= main_~p~0 0) (= main_~b~0 (+ main_~x~0 (* main_~a~0 main_~s~0))) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} assume !(0 != ~b~0); {134271#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} is VALID [2022-04-28 05:56:24,443 INFO L272 TraceCheckUtils]: 100: Hoare triple {134271#(and (= (+ main_~x~0 (* main_~a~0 main_~s~0)) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {134275#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:56:24,444 INFO L290 TraceCheckUtils]: 101: Hoare triple {134275#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {134279#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:56:24,444 INFO L290 TraceCheckUtils]: 102: Hoare triple {134279#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {133963#false} is VALID [2022-04-28 05:56:24,444 INFO L290 TraceCheckUtils]: 103: Hoare triple {133963#false} assume !false; {133963#false} is VALID [2022-04-28 05:56:24,445 INFO L134 CoverageAnalysis]: Checked inductivity of 319 backedges. 57 proven. 35 refuted. 0 times theorem prover too weak. 227 trivial. 0 not checked. [2022-04-28 05:56:24,445 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:56:42,705 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 05:56:42,989 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:56:42,989 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [474806980] [2022-04-28 05:56:42,990 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:56:42,990 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [7110270] [2022-04-28 05:56:42,990 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [7110270] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 05:56:42,990 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-28 05:56:42,990 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2022-04-28 05:56:42,990 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:56:42,990 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [77844976] [2022-04-28 05:56:42,990 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [77844976] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:56:42,990 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:56:42,990 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 05:56:42,990 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [339988140] [2022-04-28 05:56:42,991 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:56:42,991 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 05:56:42,991 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:56:42,991 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:43,059 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 05:56:43,059 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 05:56:43,059 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:43,059 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 05:56:43,060 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=224, Unknown=0, NotChecked=0, Total=272 [2022-04-28 05:56:43,060 INFO L87 Difference]: Start difference. First operand 1334 states and 1736 transitions. Second operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:49,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:49,090 INFO L93 Difference]: Finished difference Result 1565 states and 2045 transitions. [2022-04-28 05:56:49,091 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 05:56:49,091 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) Word has length 104 [2022-04-28 05:56:49,091 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:56:49,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:49,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 05:56:49,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:49,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 135 transitions. [2022-04-28 05:56:49,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 135 transitions. [2022-04-28 05:56:49,276 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:49,401 INFO L225 Difference]: With dead ends: 1565 [2022-04-28 05:56:49,401 INFO L226 Difference]: Without dead ends: 1556 [2022-04-28 05:56:49,402 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 101 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=93, Invalid=413, Unknown=0, NotChecked=0, Total=506 [2022-04-28 05:56:49,402 INFO L413 NwaCegarLoop]: 51 mSDtfsCounter, 68 mSDsluCounter, 279 mSDsCounter, 0 mSdLazyCounter, 365 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 330 SdHoareTripleChecker+Invalid, 415 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 365 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 05:56:49,402 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [75 Valid, 330 Invalid, 415 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 365 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 05:56:49,403 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1556 states. [2022-04-28 05:56:53,491 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1556 to 1518. [2022-04-28 05:56:53,491 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:56:53,493 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:53,493 INFO L74 IsIncluded]: Start isIncluded. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:53,494 INFO L87 Difference]: Start difference. First operand 1556 states. Second operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:53,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:53,567 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 05:56:53,567 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 05:56:53,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:53,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:53,570 INFO L74 IsIncluded]: Start isIncluded. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 05:56:53,571 INFO L87 Difference]: Start difference. First operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) Second operand 1556 states. [2022-04-28 05:56:53,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:56:53,646 INFO L93 Difference]: Finished difference Result 1556 states and 2026 transitions. [2022-04-28 05:56:53,647 INFO L276 IsEmpty]: Start isEmpty. Operand 1556 states and 2026 transitions. [2022-04-28 05:56:53,648 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:56:53,648 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:56:53,649 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:56:53,649 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:56:53,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1518 states, 1051 states have (on average 1.2274024738344433) internal successors, (1290), 1078 states have internal predecessors, (1290), 350 states have call successors, (350), 118 states have call predecessors, (350), 116 states have return successors, (345), 321 states have call predecessors, (345), 345 states have call successors, (345) [2022-04-28 05:56:53,751 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1518 states to 1518 states and 1985 transitions. [2022-04-28 05:56:53,752 INFO L78 Accepts]: Start accepts. Automaton has 1518 states and 1985 transitions. Word has length 104 [2022-04-28 05:56:53,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:56:53,752 INFO L495 AbstractCegarLoop]: Abstraction has 1518 states and 1985 transitions. [2022-04-28 05:56:53,752 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 3 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (9), 3 states have call predecessors, (9), 2 states have call successors, (9) [2022-04-28 05:56:53,752 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1518 states and 1985 transitions. [2022-04-28 05:56:58,431 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1985 edges. 1985 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:56:58,431 INFO L276 IsEmpty]: Start isEmpty. Operand 1518 states and 1985 transitions. [2022-04-28 05:56:58,432 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 103 [2022-04-28 05:56:58,432 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:56:58,432 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:56:58,450 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-28 05:56:58,633 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable36,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:58,633 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:56:58,633 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:56:58,633 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 5 times [2022-04-28 05:56:58,633 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:56:58,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1595010971] [2022-04-28 05:56:58,634 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:56:58,634 INFO L85 PathProgramCache]: Analyzing trace with hash -1433350311, now seen corresponding path program 6 times [2022-04-28 05:56:58,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:56:58,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [654399621] [2022-04-28 05:56:58,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:56:58,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:56:58,645 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:56:58,646 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [115290118] [2022-04-28 05:56:58,646 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-28 05:56:58,646 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:56:58,646 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:56:58,647 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:56:58,665 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-28 05:56:58,717 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-28 05:56:58,717 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:56:58,718 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 65 conjunts are in the unsatisfiable core [2022-04-28 05:56:58,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:56:58,749 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:57:13,840 INFO L272 TraceCheckUtils]: 0: Hoare triple {143622#true} call ULTIMATE.init(); {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L290 TraceCheckUtils]: 1: Hoare triple {143622#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L290 TraceCheckUtils]: 2: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143622#true} {143622#true} #108#return; {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {143622#true} call #t~ret9 := main(); {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {143622#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {143622#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L290 TraceCheckUtils]: 8: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,841 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143622#true} {143622#true} #94#return; {143622#true} is VALID [2022-04-28 05:57:13,842 INFO L272 TraceCheckUtils]: 11: Hoare triple {143622#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,842 INFO L290 TraceCheckUtils]: 12: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,842 INFO L290 TraceCheckUtils]: 13: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,842 INFO L290 TraceCheckUtils]: 14: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,842 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143622#true} {143622#true} #96#return; {143622#true} is VALID [2022-04-28 05:57:13,842 INFO L290 TraceCheckUtils]: 16: Hoare triple {143622#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,843 INFO L290 TraceCheckUtils]: 17: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,843 INFO L290 TraceCheckUtils]: 18: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post6 < 100);havoc #t~post6; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,844 INFO L290 TraceCheckUtils]: 19: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,844 INFO L290 TraceCheckUtils]: 20: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,845 INFO L290 TraceCheckUtils]: 21: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,845 INFO L290 TraceCheckUtils]: 22: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,846 INFO L290 TraceCheckUtils]: 23: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,846 INFO L290 TraceCheckUtils]: 24: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post8 < 100);havoc #t~post8; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,846 INFO L272 TraceCheckUtils]: 25: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,846 INFO L290 TraceCheckUtils]: 26: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,846 INFO L290 TraceCheckUtils]: 27: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,847 INFO L290 TraceCheckUtils]: 28: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,847 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #98#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,847 INFO L272 TraceCheckUtils]: 30: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,860 INFO L290 TraceCheckUtils]: 31: Hoare triple {143622#true} ~cond := #in~cond; {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:13,860 INFO L290 TraceCheckUtils]: 32: Hoare triple {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:13,860 INFO L290 TraceCheckUtils]: 33: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:13,861 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #100#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,861 INFO L272 TraceCheckUtils]: 35: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,861 INFO L290 TraceCheckUtils]: 36: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,861 INFO L290 TraceCheckUtils]: 37: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,862 INFO L290 TraceCheckUtils]: 38: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,862 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #102#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,862 INFO L272 TraceCheckUtils]: 40: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,863 INFO L290 TraceCheckUtils]: 41: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,863 INFO L290 TraceCheckUtils]: 42: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,863 INFO L290 TraceCheckUtils]: 43: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,863 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143622#true} {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #104#return; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,864 INFO L290 TraceCheckUtils]: 45: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= 2 * ~v~0); {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,864 INFO L290 TraceCheckUtils]: 46: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,865 INFO L290 TraceCheckUtils]: 47: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,865 INFO L290 TraceCheckUtils]: 48: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !!(#t~post7 < 100);havoc #t~post7; {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,866 INFO L290 TraceCheckUtils]: 49: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} assume !(~c~0 >= ~b~0); {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-28 05:57:13,866 INFO L290 TraceCheckUtils]: 50: Hoare triple {143675#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:13,867 INFO L290 TraceCheckUtils]: 51: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:13,867 INFO L290 TraceCheckUtils]: 52: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(#t~post6 < 100);havoc #t~post6; {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} is VALID [2022-04-28 05:57:13,868 INFO L290 TraceCheckUtils]: 53: Hoare triple {143780#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:13,868 INFO L290 TraceCheckUtils]: 54: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:13,869 INFO L290 TraceCheckUtils]: 55: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} is VALID [2022-04-28 05:57:13,869 INFO L290 TraceCheckUtils]: 56: Hoare triple {143790#(and (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,869 INFO L290 TraceCheckUtils]: 57: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,870 INFO L290 TraceCheckUtils]: 58: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,870 INFO L272 TraceCheckUtils]: 59: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,870 INFO L290 TraceCheckUtils]: 60: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,870 INFO L290 TraceCheckUtils]: 61: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,870 INFO L290 TraceCheckUtils]: 62: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,871 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #98#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,871 INFO L272 TraceCheckUtils]: 64: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,871 INFO L290 TraceCheckUtils]: 65: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,871 INFO L290 TraceCheckUtils]: 66: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,871 INFO L290 TraceCheckUtils]: 67: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,872 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #100#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,872 INFO L272 TraceCheckUtils]: 69: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,872 INFO L290 TraceCheckUtils]: 70: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,872 INFO L290 TraceCheckUtils]: 71: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,872 INFO L290 TraceCheckUtils]: 72: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,873 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #102#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,873 INFO L272 TraceCheckUtils]: 74: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,873 INFO L290 TraceCheckUtils]: 75: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:13,873 INFO L290 TraceCheckUtils]: 76: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:13,873 INFO L290 TraceCheckUtils]: 77: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:13,874 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143622#true} {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} #104#return; {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,874 INFO L290 TraceCheckUtils]: 79: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} assume !(~c~0 >= 2 * ~v~0); {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} is VALID [2022-04-28 05:57:13,874 INFO L290 TraceCheckUtils]: 80: Hoare triple {143800#(and (= main_~b~0 main_~v~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:13,875 INFO L290 TraceCheckUtils]: 81: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:13,875 INFO L290 TraceCheckUtils]: 82: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:13,876 INFO L290 TraceCheckUtils]: 83: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 05:57:13,876 INFO L290 TraceCheckUtils]: 84: Hoare triple {143873#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~k~0 1) (= main_~y~0 (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,876 INFO L290 TraceCheckUtils]: 85: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,877 INFO L290 TraceCheckUtils]: 86: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post6 < 100);havoc #t~post6; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,877 INFO L290 TraceCheckUtils]: 87: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,878 INFO L290 TraceCheckUtils]: 88: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,878 INFO L290 TraceCheckUtils]: 89: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post7 < 100);havoc #t~post7; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,878 INFO L290 TraceCheckUtils]: 90: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,879 INFO L290 TraceCheckUtils]: 91: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,879 INFO L290 TraceCheckUtils]: 92: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} assume !!(#t~post8 < 100);havoc #t~post8; {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} is VALID [2022-04-28 05:57:13,879 INFO L272 TraceCheckUtils]: 93: Hoare triple {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:13,880 INFO L290 TraceCheckUtils]: 94: Hoare triple {143622#true} ~cond := #in~cond; {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:13,880 INFO L290 TraceCheckUtils]: 95: Hoare triple {143721#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:13,880 INFO L290 TraceCheckUtils]: 96: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:13,890 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143886#(and (= (+ main_~s~0 main_~r~0) 1) (= (+ (* (- 1) main_~a~0) main_~y~0) main_~b~0) (= (+ main_~q~0 main_~p~0) 0))} #98#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:13,890 INFO L272 TraceCheckUtils]: 98: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:13,890 INFO L290 TraceCheckUtils]: 99: Hoare triple {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:13,891 INFO L290 TraceCheckUtils]: 100: Hoare triple {143934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143623#false} is VALID [2022-04-28 05:57:13,891 INFO L290 TraceCheckUtils]: 101: Hoare triple {143623#false} assume !false; {143623#false} is VALID [2022-04-28 05:57:13,891 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 40 proven. 73 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 05:57:13,891 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:57:47,669 INFO L290 TraceCheckUtils]: 101: Hoare triple {143623#false} assume !false; {143623#false} is VALID [2022-04-28 05:57:47,669 INFO L290 TraceCheckUtils]: 100: Hoare triple {143934#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {143623#false} is VALID [2022-04-28 05:57:47,669 INFO L290 TraceCheckUtils]: 99: Hoare triple {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {143934#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:57:47,670 INFO L272 TraceCheckUtils]: 98: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143930#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:57:47,671 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #98#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,671 INFO L290 TraceCheckUtils]: 96: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,672 INFO L290 TraceCheckUtils]: 95: Hoare triple {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,672 INFO L290 TraceCheckUtils]: 94: Hoare triple {143622#true} ~cond := #in~cond; {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:47,672 INFO L272 TraceCheckUtils]: 93: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,672 INFO L290 TraceCheckUtils]: 92: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post8 < 100);havoc #t~post8; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,673 INFO L290 TraceCheckUtils]: 91: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,673 INFO L290 TraceCheckUtils]: 90: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,674 INFO L290 TraceCheckUtils]: 89: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post7 < 100);havoc #t~post7; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,674 INFO L290 TraceCheckUtils]: 88: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,675 INFO L290 TraceCheckUtils]: 87: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,675 INFO L290 TraceCheckUtils]: 86: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} assume !!(#t~post6 < 100);havoc #t~post6; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,676 INFO L290 TraceCheckUtils]: 85: Hoare triple {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,853 INFO L290 TraceCheckUtils]: 84: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {143953#(or (= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1))))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))))} is VALID [2022-04-28 05:57:47,853 INFO L290 TraceCheckUtils]: 83: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !(~c~0 >= ~b~0); {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,854 INFO L290 TraceCheckUtils]: 82: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 100);havoc #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,854 INFO L290 TraceCheckUtils]: 81: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,919 INFO L290 TraceCheckUtils]: 80: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,920 INFO L290 TraceCheckUtils]: 79: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !(~c~0 >= 2 * ~v~0); {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,921 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #104#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,921 INFO L290 TraceCheckUtils]: 77: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,921 INFO L290 TraceCheckUtils]: 76: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,921 INFO L290 TraceCheckUtils]: 75: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,921 INFO L272 TraceCheckUtils]: 74: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,922 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #102#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,922 INFO L290 TraceCheckUtils]: 72: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,922 INFO L290 TraceCheckUtils]: 71: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,922 INFO L290 TraceCheckUtils]: 70: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,922 INFO L272 TraceCheckUtils]: 69: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,923 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #100#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,923 INFO L290 TraceCheckUtils]: 67: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,923 INFO L290 TraceCheckUtils]: 66: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,923 INFO L290 TraceCheckUtils]: 65: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,923 INFO L272 TraceCheckUtils]: 64: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,924 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {143622#true} {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #98#return; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,924 INFO L290 TraceCheckUtils]: 62: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,924 INFO L290 TraceCheckUtils]: 61: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,924 INFO L290 TraceCheckUtils]: 60: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,924 INFO L272 TraceCheckUtils]: 59: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,924 INFO L290 TraceCheckUtils]: 58: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} assume !!(#t~post8 < 100);havoc #t~post8; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,925 INFO L290 TraceCheckUtils]: 57: Hoare triple {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,926 INFO L290 TraceCheckUtils]: 56: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {144007#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ main_~c~0 (* (- 1) main_~v~0)) (+ (* (- 1) (* (+ (* main_~s~0 (+ main_~d~0 main_~k~0)) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* (+ (* (- 1) (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) (* (- 1) main_~p~0)) main_~x~0)) main_~y~0)))} is VALID [2022-04-28 05:57:47,926 INFO L290 TraceCheckUtils]: 55: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} assume !!(#t~post7 < 100);havoc #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,927 INFO L290 TraceCheckUtils]: 54: Hoare triple {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,927 INFO L290 TraceCheckUtils]: 53: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143994#(or (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* (- 1) (* (+ (* main_~k~0 main_~s~0) (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (+ (* (- 1) (* (- 1) main_~q~0 main_~k~0)) (* (- 1) main_~p~0)))) main_~y~0) main_~c~0))} is VALID [2022-04-28 05:57:47,928 INFO L290 TraceCheckUtils]: 52: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} assume !!(#t~post6 < 100);havoc #t~post6; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:47,928 INFO L290 TraceCheckUtils]: 51: Hoare triple {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:47,929 INFO L290 TraceCheckUtils]: 50: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {144089#(or (= (+ main_~y~0 (* (- 1) (* (+ (* (- 1) main_~r~0) 1) main_~y~0)) (* (- 1) (* main_~x~0 (* (- 1) main_~p~0)))) main_~a~0) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))))} is VALID [2022-04-28 05:57:47,929 INFO L290 TraceCheckUtils]: 49: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= ~b~0); {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,930 INFO L290 TraceCheckUtils]: 48: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !!(#t~post7 < 100);havoc #t~post7; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,930 INFO L290 TraceCheckUtils]: 47: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,930 INFO L290 TraceCheckUtils]: 46: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,931 INFO L290 TraceCheckUtils]: 45: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} assume !(~c~0 >= 2 * ~v~0); {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,931 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {143622#true} {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #104#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,931 INFO L290 TraceCheckUtils]: 43: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,931 INFO L290 TraceCheckUtils]: 42: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,932 INFO L290 TraceCheckUtils]: 41: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,932 INFO L272 TraceCheckUtils]: 40: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,932 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {143622#true} {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} #102#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,932 INFO L290 TraceCheckUtils]: 38: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,932 INFO L290 TraceCheckUtils]: 37: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,932 INFO L290 TraceCheckUtils]: 36: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,932 INFO L272 TraceCheckUtils]: 35: Hoare triple {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,933 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} {143622#true} #100#return; {143926#(= main_~b~0 (+ main_~y~0 (* (- 1) (* main_~x~0 (* (- 1) main_~q~0))) (* (- 1) (* main_~y~0 (+ (* (- 1) main_~s~0) 1)))))} is VALID [2022-04-28 05:57:47,933 INFO L290 TraceCheckUtils]: 33: Hoare triple {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,934 INFO L290 TraceCheckUtils]: 32: Hoare triple {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {143725#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:57:47,934 INFO L290 TraceCheckUtils]: 31: Hoare triple {143622#true} ~cond := #in~cond; {143963#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:57:47,934 INFO L272 TraceCheckUtils]: 30: Hoare triple {143622#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,934 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {143622#true} {143622#true} #98#return; {143622#true} is VALID [2022-04-28 05:57:47,934 INFO L290 TraceCheckUtils]: 28: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,934 INFO L290 TraceCheckUtils]: 27: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,934 INFO L290 TraceCheckUtils]: 26: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,934 INFO L272 TraceCheckUtils]: 25: Hoare triple {143622#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,934 INFO L290 TraceCheckUtils]: 24: Hoare triple {143622#true} assume !!(#t~post8 < 100);havoc #t~post8; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 23: Hoare triple {143622#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 22: Hoare triple {143622#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 21: Hoare triple {143622#true} assume !!(#t~post7 < 100);havoc #t~post7; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 20: Hoare triple {143622#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 19: Hoare triple {143622#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 18: Hoare triple {143622#true} assume !!(#t~post6 < 100);havoc #t~post6; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 17: Hoare triple {143622#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 16: Hoare triple {143622#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {143622#true} {143622#true} #96#return; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 14: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 13: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L290 TraceCheckUtils]: 12: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L272 TraceCheckUtils]: 11: Hoare triple {143622#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,935 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {143622#true} {143622#true} #94#return; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L290 TraceCheckUtils]: 9: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L290 TraceCheckUtils]: 8: Hoare triple {143622#true} assume !(0 == ~cond); {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L290 TraceCheckUtils]: 7: Hoare triple {143622#true} ~cond := #in~cond; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L272 TraceCheckUtils]: 6: Hoare triple {143622#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {143622#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L272 TraceCheckUtils]: 4: Hoare triple {143622#true} call #t~ret9 := main(); {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {143622#true} {143622#true} #108#return; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L290 TraceCheckUtils]: 2: Hoare triple {143622#true} assume true; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L290 TraceCheckUtils]: 1: Hoare triple {143622#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {143622#true} is VALID [2022-04-28 05:57:47,936 INFO L272 TraceCheckUtils]: 0: Hoare triple {143622#true} call ULTIMATE.init(); {143622#true} is VALID [2022-04-28 05:57:47,937 INFO L134 CoverageAnalysis]: Checked inductivity of 222 backedges. 66 proven. 47 refuted. 0 times theorem prover too weak. 109 trivial. 0 not checked. [2022-04-28 05:57:47,937 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:57:47,937 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [654399621] [2022-04-28 05:57:47,937 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:57:47,937 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [115290118] [2022-04-28 05:57:47,937 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [115290118] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:57:47,937 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:57:47,937 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 11] total 18 [2022-04-28 05:57:47,938 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:57:47,938 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1595010971] [2022-04-28 05:57:47,938 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1595010971] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:57:47,938 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:57:47,938 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 05:57:47,938 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1119889820] [2022-04-28 05:57:47,938 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:57:47,939 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 05:57:47,939 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:57:47,939 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:48,031 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 05:57:48,032 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 05:57:48,032 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:57:48,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 05:57:48,032 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=258, Unknown=0, NotChecked=0, Total=306 [2022-04-28 05:57:48,032 INFO L87 Difference]: Start difference. First operand 1518 states and 1985 transitions. Second operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:56,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:57:56,676 INFO L93 Difference]: Finished difference Result 1833 states and 2418 transitions. [2022-04-28 05:57:56,676 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 05:57:56,677 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 102 [2022-04-28 05:57:56,677 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:57:56,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:56,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 05:57:56,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:57:56,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 245 transitions. [2022-04-28 05:57:56,681 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 245 transitions. [2022-04-28 05:57:57,023 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:57:57,171 INFO L225 Difference]: With dead ends: 1833 [2022-04-28 05:57:57,171 INFO L226 Difference]: Without dead ends: 1831 [2022-04-28 05:57:57,172 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 183 SyntacticMatches, 4 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=128, Invalid=628, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:57:57,172 INFO L413 NwaCegarLoop]: 92 mSDtfsCounter, 149 mSDsluCounter, 498 mSDsCounter, 0 mSdLazyCounter, 779 mSolverCounterSat, 98 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 156 SdHoareTripleChecker+Valid, 590 SdHoareTripleChecker+Invalid, 877 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 98 IncrementalHoareTripleChecker+Valid, 779 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-28 05:57:57,172 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [156 Valid, 590 Invalid, 877 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [98 Valid, 779 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-28 05:57:57,174 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1831 states. [2022-04-28 05:58:01,839 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1831 to 1765. [2022-04-28 05:58:01,839 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:01,841 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:01,842 INFO L74 IsIncluded]: Start isIncluded. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:01,843 INFO L87 Difference]: Start difference. First operand 1831 states. Second operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:01,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:01,951 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 05:58:01,951 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 05:58:01,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:01,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:01,954 INFO L74 IsIncluded]: Start isIncluded. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 05:58:01,955 INFO L87 Difference]: Start difference. First operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) Second operand 1831 states. [2022-04-28 05:58:02,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:02,052 INFO L93 Difference]: Finished difference Result 1831 states and 2416 transitions. [2022-04-28 05:58:02,052 INFO L276 IsEmpty]: Start isEmpty. Operand 1831 states and 2416 transitions. [2022-04-28 05:58:02,054 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:02,054 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:02,054 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:02,054 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:02,056 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1765 states, 1240 states have (on average 1.2508064516129032) internal successors, (1551), 1274 states have internal predecessors, (1551), 397 states have call successors, (397), 129 states have call predecessors, (397), 127 states have return successors, (392), 361 states have call predecessors, (392), 392 states have call successors, (392) [2022-04-28 05:58:02,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1765 states to 1765 states and 2340 transitions. [2022-04-28 05:58:02,235 INFO L78 Accepts]: Start accepts. Automaton has 1765 states and 2340 transitions. Word has length 102 [2022-04-28 05:58:02,235 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:02,236 INFO L495 AbstractCegarLoop]: Abstraction has 1765 states and 2340 transitions. [2022-04-28 05:58:02,236 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 4.166666666666667) internal successors, (50), 11 states have internal predecessors, (50), 5 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-28 05:58:02,236 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1765 states and 2340 transitions. [2022-04-28 05:58:08,136 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2340 edges. 2340 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:08,137 INFO L276 IsEmpty]: Start isEmpty. Operand 1765 states and 2340 transitions. [2022-04-28 05:58:08,137 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 104 [2022-04-28 05:58:08,138 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:08,138 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:08,154 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:08,338 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-28 05:58:08,338 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:08,339 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:08,339 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 7 times [2022-04-28 05:58:08,339 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:08,339 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1803751881] [2022-04-28 05:58:08,339 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:08,339 INFO L85 PathProgramCache]: Analyzing trace with hash -2051750892, now seen corresponding path program 8 times [2022-04-28 05:58:08,339 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:08,339 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2139320653] [2022-04-28 05:58:08,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:08,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:08,351 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:08,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1694848121] [2022-04-28 05:58:08,352 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:08,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:08,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:08,353 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:08,357 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-28 05:58:08,415 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:08,416 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:08,417 INFO L263 TraceCheckSpWp]: Trace formula consists of 319 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-28 05:58:08,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:08,440 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:08,939 INFO L272 TraceCheckUtils]: 0: Hoare triple {155129#true} call ULTIMATE.init(); {155129#true} is VALID [2022-04-28 05:58:08,940 INFO L290 TraceCheckUtils]: 1: Hoare triple {155129#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,940 INFO L290 TraceCheckUtils]: 2: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,940 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155137#(<= ~counter~0 0)} {155129#true} #108#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,941 INFO L272 TraceCheckUtils]: 4: Hoare triple {155137#(<= ~counter~0 0)} call #t~ret9 := main(); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {155137#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,941 INFO L272 TraceCheckUtils]: 6: Hoare triple {155137#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,942 INFO L290 TraceCheckUtils]: 7: Hoare triple {155137#(<= ~counter~0 0)} ~cond := #in~cond; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,942 INFO L290 TraceCheckUtils]: 8: Hoare triple {155137#(<= ~counter~0 0)} assume !(0 == ~cond); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,943 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155137#(<= ~counter~0 0)} {155137#(<= ~counter~0 0)} #94#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,943 INFO L272 TraceCheckUtils]: 11: Hoare triple {155137#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,943 INFO L290 TraceCheckUtils]: 12: Hoare triple {155137#(<= ~counter~0 0)} ~cond := #in~cond; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,943 INFO L290 TraceCheckUtils]: 13: Hoare triple {155137#(<= ~counter~0 0)} assume !(0 == ~cond); {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,944 INFO L290 TraceCheckUtils]: 14: Hoare triple {155137#(<= ~counter~0 0)} assume true; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,944 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155137#(<= ~counter~0 0)} {155137#(<= ~counter~0 0)} #96#return; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,944 INFO L290 TraceCheckUtils]: 16: Hoare triple {155137#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155137#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:08,947 INFO L290 TraceCheckUtils]: 17: Hoare triple {155137#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:08,947 INFO L290 TraceCheckUtils]: 18: Hoare triple {155186#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:08,947 INFO L290 TraceCheckUtils]: 19: Hoare triple {155186#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155186#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:08,948 INFO L290 TraceCheckUtils]: 20: Hoare triple {155186#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:08,948 INFO L290 TraceCheckUtils]: 21: Hoare triple {155196#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:08,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {155196#(<= ~counter~0 2)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155196#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:08,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {155196#(<= ~counter~0 2)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {155206#(<= ~counter~0 3)} assume !!(#t~post8 < 100);havoc #t~post8; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,951 INFO L272 TraceCheckUtils]: 25: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,951 INFO L290 TraceCheckUtils]: 26: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,951 INFO L290 TraceCheckUtils]: 27: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,951 INFO L290 TraceCheckUtils]: 28: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,952 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #98#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,953 INFO L272 TraceCheckUtils]: 30: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,953 INFO L290 TraceCheckUtils]: 31: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,953 INFO L290 TraceCheckUtils]: 32: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,953 INFO L290 TraceCheckUtils]: 33: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,954 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #100#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,954 INFO L272 TraceCheckUtils]: 35: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,955 INFO L290 TraceCheckUtils]: 36: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,955 INFO L290 TraceCheckUtils]: 37: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,955 INFO L290 TraceCheckUtils]: 38: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,956 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #102#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,956 INFO L272 TraceCheckUtils]: 40: Hoare triple {155206#(<= ~counter~0 3)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,957 INFO L290 TraceCheckUtils]: 41: Hoare triple {155206#(<= ~counter~0 3)} ~cond := #in~cond; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,957 INFO L290 TraceCheckUtils]: 42: Hoare triple {155206#(<= ~counter~0 3)} assume !(0 == ~cond); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,957 INFO L290 TraceCheckUtils]: 43: Hoare triple {155206#(<= ~counter~0 3)} assume true; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,958 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155206#(<= ~counter~0 3)} {155206#(<= ~counter~0 3)} #104#return; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,958 INFO L290 TraceCheckUtils]: 45: Hoare triple {155206#(<= ~counter~0 3)} assume !(~c~0 >= 2 * ~v~0); {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,958 INFO L290 TraceCheckUtils]: 46: Hoare triple {155206#(<= ~counter~0 3)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155206#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:08,960 INFO L290 TraceCheckUtils]: 47: Hoare triple {155206#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:08,960 INFO L290 TraceCheckUtils]: 48: Hoare triple {155279#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:08,960 INFO L290 TraceCheckUtils]: 49: Hoare triple {155279#(<= ~counter~0 4)} assume !(~c~0 >= ~b~0); {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:08,961 INFO L290 TraceCheckUtils]: 50: Hoare triple {155279#(<= ~counter~0 4)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155279#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:08,961 INFO L290 TraceCheckUtils]: 51: Hoare triple {155279#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:08,962 INFO L290 TraceCheckUtils]: 52: Hoare triple {155292#(<= ~counter~0 5)} assume !!(#t~post6 < 100);havoc #t~post6; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:08,962 INFO L290 TraceCheckUtils]: 53: Hoare triple {155292#(<= ~counter~0 5)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155292#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:08,963 INFO L290 TraceCheckUtils]: 54: Hoare triple {155292#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:08,963 INFO L290 TraceCheckUtils]: 55: Hoare triple {155302#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:08,964 INFO L290 TraceCheckUtils]: 56: Hoare triple {155302#(<= ~counter~0 6)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155302#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:08,965 INFO L290 TraceCheckUtils]: 57: Hoare triple {155302#(<= ~counter~0 6)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,965 INFO L290 TraceCheckUtils]: 58: Hoare triple {155312#(<= ~counter~0 7)} assume !!(#t~post8 < 100);havoc #t~post8; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,965 INFO L272 TraceCheckUtils]: 59: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,966 INFO L290 TraceCheckUtils]: 60: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,966 INFO L290 TraceCheckUtils]: 61: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,966 INFO L290 TraceCheckUtils]: 62: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,967 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #98#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,967 INFO L272 TraceCheckUtils]: 64: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,968 INFO L290 TraceCheckUtils]: 65: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,968 INFO L290 TraceCheckUtils]: 66: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,968 INFO L290 TraceCheckUtils]: 67: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,969 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #100#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,969 INFO L272 TraceCheckUtils]: 69: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,969 INFO L290 TraceCheckUtils]: 70: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,970 INFO L290 TraceCheckUtils]: 71: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,970 INFO L290 TraceCheckUtils]: 72: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,971 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #102#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,971 INFO L272 TraceCheckUtils]: 74: Hoare triple {155312#(<= ~counter~0 7)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,971 INFO L290 TraceCheckUtils]: 75: Hoare triple {155312#(<= ~counter~0 7)} ~cond := #in~cond; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,972 INFO L290 TraceCheckUtils]: 76: Hoare triple {155312#(<= ~counter~0 7)} assume !(0 == ~cond); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,972 INFO L290 TraceCheckUtils]: 77: Hoare triple {155312#(<= ~counter~0 7)} assume true; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,973 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155312#(<= ~counter~0 7)} {155312#(<= ~counter~0 7)} #104#return; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,973 INFO L290 TraceCheckUtils]: 79: Hoare triple {155312#(<= ~counter~0 7)} assume !(~c~0 >= 2 * ~v~0); {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,973 INFO L290 TraceCheckUtils]: 80: Hoare triple {155312#(<= ~counter~0 7)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155312#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:08,975 INFO L290 TraceCheckUtils]: 81: Hoare triple {155312#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:08,975 INFO L290 TraceCheckUtils]: 82: Hoare triple {155385#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:08,975 INFO L290 TraceCheckUtils]: 83: Hoare triple {155385#(<= ~counter~0 8)} assume !(~c~0 >= ~b~0); {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:08,976 INFO L290 TraceCheckUtils]: 84: Hoare triple {155385#(<= ~counter~0 8)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155385#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:08,977 INFO L290 TraceCheckUtils]: 85: Hoare triple {155385#(<= ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:08,977 INFO L290 TraceCheckUtils]: 86: Hoare triple {155398#(<= ~counter~0 9)} assume !!(#t~post6 < 100);havoc #t~post6; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:08,977 INFO L290 TraceCheckUtils]: 87: Hoare triple {155398#(<= ~counter~0 9)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155398#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:08,978 INFO L290 TraceCheckUtils]: 88: Hoare triple {155398#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:08,978 INFO L290 TraceCheckUtils]: 89: Hoare triple {155408#(<= ~counter~0 10)} assume !!(#t~post7 < 100);havoc #t~post7; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:08,979 INFO L290 TraceCheckUtils]: 90: Hoare triple {155408#(<= ~counter~0 10)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155408#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:08,979 INFO L290 TraceCheckUtils]: 91: Hoare triple {155408#(<= ~counter~0 10)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155418#(<= |main_#t~post8| 10)} is VALID [2022-04-28 05:58:08,979 INFO L290 TraceCheckUtils]: 92: Hoare triple {155418#(<= |main_#t~post8| 10)} assume !(#t~post8 < 100);havoc #t~post8; {155130#false} is VALID [2022-04-28 05:58:08,979 INFO L290 TraceCheckUtils]: 93: Hoare triple {155130#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155130#false} is VALID [2022-04-28 05:58:08,979 INFO L290 TraceCheckUtils]: 94: Hoare triple {155130#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 95: Hoare triple {155130#false} assume !(#t~post7 < 100);havoc #t~post7; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 96: Hoare triple {155130#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 97: Hoare triple {155130#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 98: Hoare triple {155130#false} assume !(#t~post6 < 100);havoc #t~post6; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L272 TraceCheckUtils]: 99: Hoare triple {155130#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 100: Hoare triple {155130#false} ~cond := #in~cond; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 101: Hoare triple {155130#false} assume 0 == ~cond; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L290 TraceCheckUtils]: 102: Hoare triple {155130#false} assume !false; {155130#false} is VALID [2022-04-28 05:58:08,980 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 116 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:58:08,980 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:09,557 INFO L290 TraceCheckUtils]: 102: Hoare triple {155130#false} assume !false; {155130#false} is VALID [2022-04-28 05:58:09,557 INFO L290 TraceCheckUtils]: 101: Hoare triple {155130#false} assume 0 == ~cond; {155130#false} is VALID [2022-04-28 05:58:09,557 INFO L290 TraceCheckUtils]: 100: Hoare triple {155130#false} ~cond := #in~cond; {155130#false} is VALID [2022-04-28 05:58:09,557 INFO L272 TraceCheckUtils]: 99: Hoare triple {155130#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {155130#false} is VALID [2022-04-28 05:58:09,557 INFO L290 TraceCheckUtils]: 98: Hoare triple {155130#false} assume !(#t~post6 < 100);havoc #t~post6; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 97: Hoare triple {155130#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 96: Hoare triple {155130#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 95: Hoare triple {155130#false} assume !(#t~post7 < 100);havoc #t~post7; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 94: Hoare triple {155130#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 93: Hoare triple {155130#false} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 92: Hoare triple {155482#(< |main_#t~post8| 100)} assume !(#t~post8 < 100);havoc #t~post8; {155130#false} is VALID [2022-04-28 05:58:09,558 INFO L290 TraceCheckUtils]: 91: Hoare triple {155486#(< ~counter~0 100)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155482#(< |main_#t~post8| 100)} is VALID [2022-04-28 05:58:09,559 INFO L290 TraceCheckUtils]: 90: Hoare triple {155486#(< ~counter~0 100)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155486#(< ~counter~0 100)} is VALID [2022-04-28 05:58:09,559 INFO L290 TraceCheckUtils]: 89: Hoare triple {155486#(< ~counter~0 100)} assume !!(#t~post7 < 100);havoc #t~post7; {155486#(< ~counter~0 100)} is VALID [2022-04-28 05:58:09,561 INFO L290 TraceCheckUtils]: 88: Hoare triple {155496#(< ~counter~0 99)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155486#(< ~counter~0 100)} is VALID [2022-04-28 05:58:09,561 INFO L290 TraceCheckUtils]: 87: Hoare triple {155496#(< ~counter~0 99)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155496#(< ~counter~0 99)} is VALID [2022-04-28 05:58:09,562 INFO L290 TraceCheckUtils]: 86: Hoare triple {155496#(< ~counter~0 99)} assume !!(#t~post6 < 100);havoc #t~post6; {155496#(< ~counter~0 99)} is VALID [2022-04-28 05:58:09,563 INFO L290 TraceCheckUtils]: 85: Hoare triple {155506#(< ~counter~0 98)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155496#(< ~counter~0 99)} is VALID [2022-04-28 05:58:09,563 INFO L290 TraceCheckUtils]: 84: Hoare triple {155506#(< ~counter~0 98)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155506#(< ~counter~0 98)} is VALID [2022-04-28 05:58:09,563 INFO L290 TraceCheckUtils]: 83: Hoare triple {155506#(< ~counter~0 98)} assume !(~c~0 >= ~b~0); {155506#(< ~counter~0 98)} is VALID [2022-04-28 05:58:09,563 INFO L290 TraceCheckUtils]: 82: Hoare triple {155506#(< ~counter~0 98)} assume !!(#t~post7 < 100);havoc #t~post7; {155506#(< ~counter~0 98)} is VALID [2022-04-28 05:58:09,564 INFO L290 TraceCheckUtils]: 81: Hoare triple {155519#(< ~counter~0 97)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155506#(< ~counter~0 98)} is VALID [2022-04-28 05:58:09,565 INFO L290 TraceCheckUtils]: 80: Hoare triple {155519#(< ~counter~0 97)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,565 INFO L290 TraceCheckUtils]: 79: Hoare triple {155519#(< ~counter~0 97)} assume !(~c~0 >= 2 * ~v~0); {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,565 INFO L284 TraceCheckUtils]: 78: Hoare quadruple {155129#true} {155519#(< ~counter~0 97)} #104#return; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,566 INFO L290 TraceCheckUtils]: 77: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,566 INFO L290 TraceCheckUtils]: 76: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,566 INFO L290 TraceCheckUtils]: 75: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,566 INFO L272 TraceCheckUtils]: 74: Hoare triple {155519#(< ~counter~0 97)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,566 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {155129#true} {155519#(< ~counter~0 97)} #102#return; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,566 INFO L290 TraceCheckUtils]: 72: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,566 INFO L290 TraceCheckUtils]: 71: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,566 INFO L290 TraceCheckUtils]: 70: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,567 INFO L272 TraceCheckUtils]: 69: Hoare triple {155519#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,567 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {155129#true} {155519#(< ~counter~0 97)} #100#return; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,567 INFO L290 TraceCheckUtils]: 67: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,567 INFO L290 TraceCheckUtils]: 66: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,567 INFO L290 TraceCheckUtils]: 65: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,567 INFO L272 TraceCheckUtils]: 64: Hoare triple {155519#(< ~counter~0 97)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,568 INFO L284 TraceCheckUtils]: 63: Hoare quadruple {155129#true} {155519#(< ~counter~0 97)} #98#return; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,568 INFO L290 TraceCheckUtils]: 62: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,568 INFO L290 TraceCheckUtils]: 61: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,568 INFO L290 TraceCheckUtils]: 60: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,568 INFO L272 TraceCheckUtils]: 59: Hoare triple {155519#(< ~counter~0 97)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,568 INFO L290 TraceCheckUtils]: 58: Hoare triple {155519#(< ~counter~0 97)} assume !!(#t~post8 < 100);havoc #t~post8; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,569 INFO L290 TraceCheckUtils]: 57: Hoare triple {155592#(< ~counter~0 96)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155519#(< ~counter~0 97)} is VALID [2022-04-28 05:58:09,570 INFO L290 TraceCheckUtils]: 56: Hoare triple {155592#(< ~counter~0 96)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155592#(< ~counter~0 96)} is VALID [2022-04-28 05:58:09,570 INFO L290 TraceCheckUtils]: 55: Hoare triple {155592#(< ~counter~0 96)} assume !!(#t~post7 < 100);havoc #t~post7; {155592#(< ~counter~0 96)} is VALID [2022-04-28 05:58:09,571 INFO L290 TraceCheckUtils]: 54: Hoare triple {155602#(< ~counter~0 95)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155592#(< ~counter~0 96)} is VALID [2022-04-28 05:58:09,571 INFO L290 TraceCheckUtils]: 53: Hoare triple {155602#(< ~counter~0 95)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155602#(< ~counter~0 95)} is VALID [2022-04-28 05:58:09,571 INFO L290 TraceCheckUtils]: 52: Hoare triple {155602#(< ~counter~0 95)} assume !!(#t~post6 < 100);havoc #t~post6; {155602#(< ~counter~0 95)} is VALID [2022-04-28 05:58:09,572 INFO L290 TraceCheckUtils]: 51: Hoare triple {155612#(< ~counter~0 94)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155602#(< ~counter~0 95)} is VALID [2022-04-28 05:58:09,573 INFO L290 TraceCheckUtils]: 50: Hoare triple {155612#(< ~counter~0 94)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {155612#(< ~counter~0 94)} is VALID [2022-04-28 05:58:09,573 INFO L290 TraceCheckUtils]: 49: Hoare triple {155612#(< ~counter~0 94)} assume !(~c~0 >= ~b~0); {155612#(< ~counter~0 94)} is VALID [2022-04-28 05:58:09,573 INFO L290 TraceCheckUtils]: 48: Hoare triple {155612#(< ~counter~0 94)} assume !!(#t~post7 < 100);havoc #t~post7; {155612#(< ~counter~0 94)} is VALID [2022-04-28 05:58:09,574 INFO L290 TraceCheckUtils]: 47: Hoare triple {155625#(< ~counter~0 93)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155612#(< ~counter~0 94)} is VALID [2022-04-28 05:58:09,574 INFO L290 TraceCheckUtils]: 46: Hoare triple {155625#(< ~counter~0 93)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,575 INFO L290 TraceCheckUtils]: 45: Hoare triple {155625#(< ~counter~0 93)} assume !(~c~0 >= 2 * ~v~0); {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,575 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {155129#true} {155625#(< ~counter~0 93)} #104#return; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,575 INFO L290 TraceCheckUtils]: 43: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,575 INFO L290 TraceCheckUtils]: 42: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,575 INFO L290 TraceCheckUtils]: 41: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,575 INFO L272 TraceCheckUtils]: 40: Hoare triple {155625#(< ~counter~0 93)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,576 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {155129#true} {155625#(< ~counter~0 93)} #102#return; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,576 INFO L290 TraceCheckUtils]: 38: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,576 INFO L290 TraceCheckUtils]: 37: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,576 INFO L290 TraceCheckUtils]: 36: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,576 INFO L272 TraceCheckUtils]: 35: Hoare triple {155625#(< ~counter~0 93)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,577 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {155129#true} {155625#(< ~counter~0 93)} #100#return; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,577 INFO L290 TraceCheckUtils]: 33: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,577 INFO L290 TraceCheckUtils]: 32: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,577 INFO L290 TraceCheckUtils]: 31: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,577 INFO L272 TraceCheckUtils]: 30: Hoare triple {155625#(< ~counter~0 93)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,578 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {155129#true} {155625#(< ~counter~0 93)} #98#return; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,578 INFO L290 TraceCheckUtils]: 28: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,578 INFO L290 TraceCheckUtils]: 27: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,578 INFO L290 TraceCheckUtils]: 26: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,578 INFO L272 TraceCheckUtils]: 25: Hoare triple {155625#(< ~counter~0 93)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,578 INFO L290 TraceCheckUtils]: 24: Hoare triple {155625#(< ~counter~0 93)} assume !!(#t~post8 < 100);havoc #t~post8; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,579 INFO L290 TraceCheckUtils]: 23: Hoare triple {155698#(< ~counter~0 92)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {155625#(< ~counter~0 93)} is VALID [2022-04-28 05:58:09,579 INFO L290 TraceCheckUtils]: 22: Hoare triple {155698#(< ~counter~0 92)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {155698#(< ~counter~0 92)} is VALID [2022-04-28 05:58:09,580 INFO L290 TraceCheckUtils]: 21: Hoare triple {155698#(< ~counter~0 92)} assume !!(#t~post7 < 100);havoc #t~post7; {155698#(< ~counter~0 92)} is VALID [2022-04-28 05:58:09,581 INFO L290 TraceCheckUtils]: 20: Hoare triple {155708#(< ~counter~0 91)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {155698#(< ~counter~0 92)} is VALID [2022-04-28 05:58:09,581 INFO L290 TraceCheckUtils]: 19: Hoare triple {155708#(< ~counter~0 91)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {155708#(< ~counter~0 91)} is VALID [2022-04-28 05:58:09,581 INFO L290 TraceCheckUtils]: 18: Hoare triple {155708#(< ~counter~0 91)} assume !!(#t~post6 < 100);havoc #t~post6; {155708#(< ~counter~0 91)} is VALID [2022-04-28 05:58:09,582 INFO L290 TraceCheckUtils]: 17: Hoare triple {155718#(< ~counter~0 90)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {155708#(< ~counter~0 91)} is VALID [2022-04-28 05:58:09,582 INFO L290 TraceCheckUtils]: 16: Hoare triple {155718#(< ~counter~0 90)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,583 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {155129#true} {155718#(< ~counter~0 90)} #96#return; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,583 INFO L290 TraceCheckUtils]: 14: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,583 INFO L290 TraceCheckUtils]: 13: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,583 INFO L290 TraceCheckUtils]: 12: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,583 INFO L272 TraceCheckUtils]: 11: Hoare triple {155718#(< ~counter~0 90)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,583 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155129#true} {155718#(< ~counter~0 90)} #94#return; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,584 INFO L290 TraceCheckUtils]: 9: Hoare triple {155129#true} assume true; {155129#true} is VALID [2022-04-28 05:58:09,584 INFO L290 TraceCheckUtils]: 8: Hoare triple {155129#true} assume !(0 == ~cond); {155129#true} is VALID [2022-04-28 05:58:09,584 INFO L290 TraceCheckUtils]: 7: Hoare triple {155129#true} ~cond := #in~cond; {155129#true} is VALID [2022-04-28 05:58:09,584 INFO L272 TraceCheckUtils]: 6: Hoare triple {155718#(< ~counter~0 90)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {155129#true} is VALID [2022-04-28 05:58:09,584 INFO L290 TraceCheckUtils]: 5: Hoare triple {155718#(< ~counter~0 90)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,584 INFO L272 TraceCheckUtils]: 4: Hoare triple {155718#(< ~counter~0 90)} call #t~ret9 := main(); {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,585 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155718#(< ~counter~0 90)} {155129#true} #108#return; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,585 INFO L290 TraceCheckUtils]: 2: Hoare triple {155718#(< ~counter~0 90)} assume true; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,585 INFO L290 TraceCheckUtils]: 1: Hoare triple {155129#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {155718#(< ~counter~0 90)} is VALID [2022-04-28 05:58:09,585 INFO L272 TraceCheckUtils]: 0: Hoare triple {155129#true} call ULTIMATE.init(); {155129#true} is VALID [2022-04-28 05:58:09,586 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 36 proven. 52 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:58:09,586 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:09,586 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2139320653] [2022-04-28 05:58:09,586 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:09,586 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1694848121] [2022-04-28 05:58:09,586 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1694848121] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:09,586 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:09,586 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 14] total 26 [2022-04-28 05:58:09,586 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:09,586 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1803751881] [2022-04-28 05:58:09,586 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1803751881] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:09,587 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:09,587 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 05:58:09,587 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2069353266] [2022-04-28 05:58:09,587 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:09,587 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 05:58:09,587 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:09,587 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:09,666 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 05:58:09,666 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 05:58:09,666 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:09,666 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 05:58:09,666 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=281, Invalid=369, Unknown=0, NotChecked=0, Total=650 [2022-04-28 05:58:09,666 INFO L87 Difference]: Start difference. First operand 1765 states and 2340 transitions. Second operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:16,115 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:16,115 INFO L93 Difference]: Finished difference Result 2634 states and 3640 transitions. [2022-04-28 05:58:16,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 05:58:16,115 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 103 [2022-04-28 05:58:16,115 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:16,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:16,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 05:58:16,117 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:16,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 285 transitions. [2022-04-28 05:58:16,119 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 285 transitions. [2022-04-28 05:58:16,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:16,562 INFO L225 Difference]: With dead ends: 2634 [2022-04-28 05:58:16,562 INFO L226 Difference]: Without dead ends: 1870 [2022-04-28 05:58:16,563 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 213 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 63 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=465, Invalid=657, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 05:58:16,564 INFO L413 NwaCegarLoop]: 76 mSDtfsCounter, 215 mSDsluCounter, 254 mSDsCounter, 0 mSdLazyCounter, 164 mSolverCounterSat, 108 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 215 SdHoareTripleChecker+Valid, 330 SdHoareTripleChecker+Invalid, 272 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 108 IncrementalHoareTripleChecker+Valid, 164 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:16,564 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [215 Valid, 330 Invalid, 272 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [108 Valid, 164 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 05:58:16,565 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1870 states. [2022-04-28 05:58:21,606 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1870 to 1825. [2022-04-28 05:58:21,606 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:21,608 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:21,609 INFO L74 IsIncluded]: Start isIncluded. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:21,610 INFO L87 Difference]: Start difference. First operand 1870 states. Second operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:21,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:21,713 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 05:58:21,713 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 05:58:21,716 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:21,716 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:21,718 INFO L74 IsIncluded]: Start isIncluded. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 05:58:21,718 INFO L87 Difference]: Start difference. First operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) Second operand 1870 states. [2022-04-28 05:58:21,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:21,825 INFO L93 Difference]: Finished difference Result 1870 states and 2455 transitions. [2022-04-28 05:58:21,825 INFO L276 IsEmpty]: Start isEmpty. Operand 1870 states and 2455 transitions. [2022-04-28 05:58:21,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:21,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:21,827 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:21,827 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:21,829 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1825 states, 1298 states have (on average 1.2496147919876734) internal successors, (1622), 1319 states have internal predecessors, (1622), 398 states have call successors, (398), 130 states have call predecessors, (398), 128 states have return successors, (393), 375 states have call predecessors, (393), 393 states have call successors, (393) [2022-04-28 05:58:21,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1825 states to 1825 states and 2413 transitions. [2022-04-28 05:58:21,984 INFO L78 Accepts]: Start accepts. Automaton has 1825 states and 2413 transitions. Word has length 103 [2022-04-28 05:58:21,984 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:21,984 INFO L495 AbstractCegarLoop]: Abstraction has 1825 states and 2413 transitions. [2022-04-28 05:58:21,985 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.142857142857143) internal successors, (58), 13 states have internal predecessors, (58), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:21,985 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 1825 states and 2413 transitions. [2022-04-28 05:58:28,368 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2413 edges. 2413 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:28,368 INFO L276 IsEmpty]: Start isEmpty. Operand 1825 states and 2413 transitions. [2022-04-28 05:58:28,369 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-28 05:58:28,369 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:28,369 INFO L195 NwaCegarLoop]: trace histogram [9, 8, 8, 6, 5, 5, 4, 4, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:28,386 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Ended with exit code 0 [2022-04-28 05:58:28,571 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-28 05:58:28,571 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:28,572 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:28,572 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 7 times [2022-04-28 05:58:28,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:28,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [250202167] [2022-04-28 05:58:28,572 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:28,572 INFO L85 PathProgramCache]: Analyzing trace with hash -1865093808, now seen corresponding path program 8 times [2022-04-28 05:58:28,572 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:28,572 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1542658415] [2022-04-28 05:58:28,572 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:28,572 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:28,585 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:28,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1288828828] [2022-04-28 05:58:28,585 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:28,585 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:28,586 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:28,587 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:28,591 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-28 05:58:28,663 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:28,663 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:28,665 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 27 conjunts are in the unsatisfiable core [2022-04-28 05:58:28,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:28,694 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:29,265 INFO L272 TraceCheckUtils]: 0: Hoare triple {168446#true} call ULTIMATE.init(); {168446#true} is VALID [2022-04-28 05:58:29,266 INFO L290 TraceCheckUtils]: 1: Hoare triple {168446#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,266 INFO L290 TraceCheckUtils]: 2: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,267 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168454#(<= ~counter~0 0)} {168446#true} #108#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,267 INFO L272 TraceCheckUtils]: 4: Hoare triple {168454#(<= ~counter~0 0)} call #t~ret9 := main(); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {168454#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,268 INFO L272 TraceCheckUtils]: 6: Hoare triple {168454#(<= ~counter~0 0)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,268 INFO L290 TraceCheckUtils]: 7: Hoare triple {168454#(<= ~counter~0 0)} ~cond := #in~cond; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,268 INFO L290 TraceCheckUtils]: 8: Hoare triple {168454#(<= ~counter~0 0)} assume !(0 == ~cond); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,268 INFO L290 TraceCheckUtils]: 9: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,269 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168454#(<= ~counter~0 0)} {168454#(<= ~counter~0 0)} #94#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,269 INFO L272 TraceCheckUtils]: 11: Hoare triple {168454#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,269 INFO L290 TraceCheckUtils]: 12: Hoare triple {168454#(<= ~counter~0 0)} ~cond := #in~cond; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,270 INFO L290 TraceCheckUtils]: 13: Hoare triple {168454#(<= ~counter~0 0)} assume !(0 == ~cond); {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,270 INFO L290 TraceCheckUtils]: 14: Hoare triple {168454#(<= ~counter~0 0)} assume true; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,270 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168454#(<= ~counter~0 0)} {168454#(<= ~counter~0 0)} #96#return; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,271 INFO L290 TraceCheckUtils]: 16: Hoare triple {168454#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {168454#(<= ~counter~0 0)} is VALID [2022-04-28 05:58:29,273 INFO L290 TraceCheckUtils]: 17: Hoare triple {168454#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:29,273 INFO L290 TraceCheckUtils]: 18: Hoare triple {168503#(<= ~counter~0 1)} assume !!(#t~post6 < 100);havoc #t~post6; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:29,274 INFO L290 TraceCheckUtils]: 19: Hoare triple {168503#(<= ~counter~0 1)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168503#(<= ~counter~0 1)} is VALID [2022-04-28 05:58:29,275 INFO L290 TraceCheckUtils]: 20: Hoare triple {168503#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:29,275 INFO L290 TraceCheckUtils]: 21: Hoare triple {168513#(<= ~counter~0 2)} assume !!(#t~post7 < 100);havoc #t~post7; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:29,275 INFO L290 TraceCheckUtils]: 22: Hoare triple {168513#(<= ~counter~0 2)} assume !(~c~0 >= ~b~0); {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:29,275 INFO L290 TraceCheckUtils]: 23: Hoare triple {168513#(<= ~counter~0 2)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168513#(<= ~counter~0 2)} is VALID [2022-04-28 05:58:29,276 INFO L290 TraceCheckUtils]: 24: Hoare triple {168513#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:29,277 INFO L290 TraceCheckUtils]: 25: Hoare triple {168526#(<= ~counter~0 3)} assume !!(#t~post6 < 100);havoc #t~post6; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:29,277 INFO L290 TraceCheckUtils]: 26: Hoare triple {168526#(<= ~counter~0 3)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168526#(<= ~counter~0 3)} is VALID [2022-04-28 05:58:29,278 INFO L290 TraceCheckUtils]: 27: Hoare triple {168526#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:29,278 INFO L290 TraceCheckUtils]: 28: Hoare triple {168536#(<= ~counter~0 4)} assume !!(#t~post7 < 100);havoc #t~post7; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:29,278 INFO L290 TraceCheckUtils]: 29: Hoare triple {168536#(<= ~counter~0 4)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168536#(<= ~counter~0 4)} is VALID [2022-04-28 05:58:29,279 INFO L290 TraceCheckUtils]: 30: Hoare triple {168536#(<= ~counter~0 4)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,280 INFO L290 TraceCheckUtils]: 31: Hoare triple {168546#(<= ~counter~0 5)} assume !!(#t~post8 < 100);havoc #t~post8; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,280 INFO L272 TraceCheckUtils]: 32: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,281 INFO L290 TraceCheckUtils]: 33: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,281 INFO L290 TraceCheckUtils]: 34: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,281 INFO L290 TraceCheckUtils]: 35: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,282 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #98#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,282 INFO L272 TraceCheckUtils]: 37: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,282 INFO L290 TraceCheckUtils]: 38: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,283 INFO L290 TraceCheckUtils]: 39: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,283 INFO L290 TraceCheckUtils]: 40: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,284 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #100#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,284 INFO L272 TraceCheckUtils]: 42: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,284 INFO L290 TraceCheckUtils]: 43: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,285 INFO L290 TraceCheckUtils]: 44: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,285 INFO L290 TraceCheckUtils]: 45: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,285 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #102#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,286 INFO L272 TraceCheckUtils]: 47: Hoare triple {168546#(<= ~counter~0 5)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,286 INFO L290 TraceCheckUtils]: 48: Hoare triple {168546#(<= ~counter~0 5)} ~cond := #in~cond; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,286 INFO L290 TraceCheckUtils]: 49: Hoare triple {168546#(<= ~counter~0 5)} assume !(0 == ~cond); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,287 INFO L290 TraceCheckUtils]: 50: Hoare triple {168546#(<= ~counter~0 5)} assume true; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,287 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168546#(<= ~counter~0 5)} {168546#(<= ~counter~0 5)} #104#return; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,287 INFO L290 TraceCheckUtils]: 52: Hoare triple {168546#(<= ~counter~0 5)} assume !(~c~0 >= 2 * ~v~0); {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,288 INFO L290 TraceCheckUtils]: 53: Hoare triple {168546#(<= ~counter~0 5)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168546#(<= ~counter~0 5)} is VALID [2022-04-28 05:58:29,289 INFO L290 TraceCheckUtils]: 54: Hoare triple {168546#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:29,289 INFO L290 TraceCheckUtils]: 55: Hoare triple {168619#(<= ~counter~0 6)} assume !!(#t~post7 < 100);havoc #t~post7; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:29,289 INFO L290 TraceCheckUtils]: 56: Hoare triple {168619#(<= ~counter~0 6)} assume !(~c~0 >= ~b~0); {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:29,290 INFO L290 TraceCheckUtils]: 57: Hoare triple {168619#(<= ~counter~0 6)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168619#(<= ~counter~0 6)} is VALID [2022-04-28 05:58:29,290 INFO L290 TraceCheckUtils]: 58: Hoare triple {168619#(<= ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:29,291 INFO L290 TraceCheckUtils]: 59: Hoare triple {168632#(<= ~counter~0 7)} assume !!(#t~post6 < 100);havoc #t~post6; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:29,291 INFO L290 TraceCheckUtils]: 60: Hoare triple {168632#(<= ~counter~0 7)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168632#(<= ~counter~0 7)} is VALID [2022-04-28 05:58:29,292 INFO L290 TraceCheckUtils]: 61: Hoare triple {168632#(<= ~counter~0 7)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:29,292 INFO L290 TraceCheckUtils]: 62: Hoare triple {168642#(<= ~counter~0 8)} assume !!(#t~post7 < 100);havoc #t~post7; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:29,293 INFO L290 TraceCheckUtils]: 63: Hoare triple {168642#(<= ~counter~0 8)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168642#(<= ~counter~0 8)} is VALID [2022-04-28 05:58:29,294 INFO L290 TraceCheckUtils]: 64: Hoare triple {168642#(<= ~counter~0 8)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,294 INFO L290 TraceCheckUtils]: 65: Hoare triple {168652#(<= ~counter~0 9)} assume !!(#t~post8 < 100);havoc #t~post8; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,294 INFO L272 TraceCheckUtils]: 66: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,295 INFO L290 TraceCheckUtils]: 67: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,295 INFO L290 TraceCheckUtils]: 68: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,295 INFO L290 TraceCheckUtils]: 69: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,296 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #98#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,296 INFO L272 TraceCheckUtils]: 71: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,297 INFO L290 TraceCheckUtils]: 72: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,297 INFO L290 TraceCheckUtils]: 73: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,297 INFO L290 TraceCheckUtils]: 74: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,298 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #100#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,298 INFO L272 TraceCheckUtils]: 76: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,298 INFO L290 TraceCheckUtils]: 77: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,299 INFO L290 TraceCheckUtils]: 78: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,299 INFO L290 TraceCheckUtils]: 79: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,299 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #102#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,300 INFO L272 TraceCheckUtils]: 81: Hoare triple {168652#(<= ~counter~0 9)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,300 INFO L290 TraceCheckUtils]: 82: Hoare triple {168652#(<= ~counter~0 9)} ~cond := #in~cond; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,300 INFO L290 TraceCheckUtils]: 83: Hoare triple {168652#(<= ~counter~0 9)} assume !(0 == ~cond); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,301 INFO L290 TraceCheckUtils]: 84: Hoare triple {168652#(<= ~counter~0 9)} assume true; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,301 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168652#(<= ~counter~0 9)} {168652#(<= ~counter~0 9)} #104#return; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,301 INFO L290 TraceCheckUtils]: 86: Hoare triple {168652#(<= ~counter~0 9)} assume !(~c~0 >= 2 * ~v~0); {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,302 INFO L290 TraceCheckUtils]: 87: Hoare triple {168652#(<= ~counter~0 9)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168652#(<= ~counter~0 9)} is VALID [2022-04-28 05:58:29,303 INFO L290 TraceCheckUtils]: 88: Hoare triple {168652#(<= ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:29,303 INFO L290 TraceCheckUtils]: 89: Hoare triple {168725#(<= ~counter~0 10)} assume !!(#t~post7 < 100);havoc #t~post7; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:29,303 INFO L290 TraceCheckUtils]: 90: Hoare triple {168725#(<= ~counter~0 10)} assume !(~c~0 >= ~b~0); {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:29,304 INFO L290 TraceCheckUtils]: 91: Hoare triple {168725#(<= ~counter~0 10)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168725#(<= ~counter~0 10)} is VALID [2022-04-28 05:58:29,305 INFO L290 TraceCheckUtils]: 92: Hoare triple {168725#(<= ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:29,305 INFO L290 TraceCheckUtils]: 93: Hoare triple {168738#(<= ~counter~0 11)} assume !!(#t~post6 < 100);havoc #t~post6; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:29,305 INFO L290 TraceCheckUtils]: 94: Hoare triple {168738#(<= ~counter~0 11)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168738#(<= ~counter~0 11)} is VALID [2022-04-28 05:58:29,305 INFO L290 TraceCheckUtils]: 95: Hoare triple {168738#(<= ~counter~0 11)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168748#(<= |main_#t~post7| 11)} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 96: Hoare triple {168748#(<= |main_#t~post7| 11)} assume !(#t~post7 < 100);havoc #t~post7; {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 97: Hoare triple {168447#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 98: Hoare triple {168447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 99: Hoare triple {168447#false} assume !(#t~post6 < 100);havoc #t~post6; {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L272 TraceCheckUtils]: 100: Hoare triple {168447#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 101: Hoare triple {168447#false} ~cond := #in~cond; {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 102: Hoare triple {168447#false} assume 0 == ~cond; {168447#false} is VALID [2022-04-28 05:58:29,306 INFO L290 TraceCheckUtils]: 103: Hoare triple {168447#false} assume !false; {168447#false} is VALID [2022-04-28 05:58:29,307 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 133 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2022-04-28 05:58:29,307 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:58:29,952 INFO L290 TraceCheckUtils]: 103: Hoare triple {168447#false} assume !false; {168447#false} is VALID [2022-04-28 05:58:29,952 INFO L290 TraceCheckUtils]: 102: Hoare triple {168447#false} assume 0 == ~cond; {168447#false} is VALID [2022-04-28 05:58:29,952 INFO L290 TraceCheckUtils]: 101: Hoare triple {168447#false} ~cond := #in~cond; {168447#false} is VALID [2022-04-28 05:58:29,952 INFO L272 TraceCheckUtils]: 100: Hoare triple {168447#false} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {168447#false} is VALID [2022-04-28 05:58:29,953 INFO L290 TraceCheckUtils]: 99: Hoare triple {168447#false} assume !(#t~post6 < 100);havoc #t~post6; {168447#false} is VALID [2022-04-28 05:58:29,953 INFO L290 TraceCheckUtils]: 98: Hoare triple {168447#false} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168447#false} is VALID [2022-04-28 05:58:29,953 INFO L290 TraceCheckUtils]: 97: Hoare triple {168447#false} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168447#false} is VALID [2022-04-28 05:58:29,953 INFO L290 TraceCheckUtils]: 96: Hoare triple {168794#(< |main_#t~post7| 100)} assume !(#t~post7 < 100);havoc #t~post7; {168447#false} is VALID [2022-04-28 05:58:29,954 INFO L290 TraceCheckUtils]: 95: Hoare triple {168798#(< ~counter~0 100)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168794#(< |main_#t~post7| 100)} is VALID [2022-04-28 05:58:29,954 INFO L290 TraceCheckUtils]: 94: Hoare triple {168798#(< ~counter~0 100)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168798#(< ~counter~0 100)} is VALID [2022-04-28 05:58:29,955 INFO L290 TraceCheckUtils]: 93: Hoare triple {168798#(< ~counter~0 100)} assume !!(#t~post6 < 100);havoc #t~post6; {168798#(< ~counter~0 100)} is VALID [2022-04-28 05:58:29,958 INFO L290 TraceCheckUtils]: 92: Hoare triple {168808#(< ~counter~0 99)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168798#(< ~counter~0 100)} is VALID [2022-04-28 05:58:29,958 INFO L290 TraceCheckUtils]: 91: Hoare triple {168808#(< ~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; {168808#(< ~counter~0 99)} is VALID [2022-04-28 05:58:29,959 INFO L290 TraceCheckUtils]: 90: Hoare triple {168808#(< ~counter~0 99)} assume !(~c~0 >= ~b~0); {168808#(< ~counter~0 99)} is VALID [2022-04-28 05:58:29,959 INFO L290 TraceCheckUtils]: 89: Hoare triple {168808#(< ~counter~0 99)} assume !!(#t~post7 < 100);havoc #t~post7; {168808#(< ~counter~0 99)} is VALID [2022-04-28 05:58:29,960 INFO L290 TraceCheckUtils]: 88: Hoare triple {168821#(< ~counter~0 98)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168808#(< ~counter~0 99)} is VALID [2022-04-28 05:58:29,961 INFO L290 TraceCheckUtils]: 87: Hoare triple {168821#(< ~counter~0 98)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,961 INFO L290 TraceCheckUtils]: 86: Hoare triple {168821#(< ~counter~0 98)} assume !(~c~0 >= 2 * ~v~0); {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,962 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {168446#true} {168821#(< ~counter~0 98)} #104#return; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,963 INFO L290 TraceCheckUtils]: 84: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,963 INFO L290 TraceCheckUtils]: 83: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,963 INFO L290 TraceCheckUtils]: 82: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,963 INFO L272 TraceCheckUtils]: 81: Hoare triple {168821#(< ~counter~0 98)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,964 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {168446#true} {168821#(< ~counter~0 98)} #102#return; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,964 INFO L290 TraceCheckUtils]: 79: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,964 INFO L290 TraceCheckUtils]: 78: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,964 INFO L290 TraceCheckUtils]: 77: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,964 INFO L272 TraceCheckUtils]: 76: Hoare triple {168821#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,965 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {168446#true} {168821#(< ~counter~0 98)} #100#return; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,965 INFO L290 TraceCheckUtils]: 74: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,965 INFO L290 TraceCheckUtils]: 73: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,965 INFO L290 TraceCheckUtils]: 72: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,966 INFO L272 TraceCheckUtils]: 71: Hoare triple {168821#(< ~counter~0 98)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,966 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {168446#true} {168821#(< ~counter~0 98)} #98#return; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,966 INFO L290 TraceCheckUtils]: 69: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,966 INFO L290 TraceCheckUtils]: 68: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,966 INFO L290 TraceCheckUtils]: 67: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,967 INFO L272 TraceCheckUtils]: 66: Hoare triple {168821#(< ~counter~0 98)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,967 INFO L290 TraceCheckUtils]: 65: Hoare triple {168821#(< ~counter~0 98)} assume !!(#t~post8 < 100);havoc #t~post8; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,968 INFO L290 TraceCheckUtils]: 64: Hoare triple {168894#(< ~counter~0 97)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168821#(< ~counter~0 98)} is VALID [2022-04-28 05:58:29,969 INFO L290 TraceCheckUtils]: 63: Hoare triple {168894#(< ~counter~0 97)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {168894#(< ~counter~0 97)} is VALID [2022-04-28 05:58:29,969 INFO L290 TraceCheckUtils]: 62: Hoare triple {168894#(< ~counter~0 97)} assume !!(#t~post7 < 100);havoc #t~post7; {168894#(< ~counter~0 97)} is VALID [2022-04-28 05:58:29,970 INFO L290 TraceCheckUtils]: 61: Hoare triple {168904#(< ~counter~0 96)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168894#(< ~counter~0 97)} is VALID [2022-04-28 05:58:29,970 INFO L290 TraceCheckUtils]: 60: Hoare triple {168904#(< ~counter~0 96)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {168904#(< ~counter~0 96)} is VALID [2022-04-28 05:58:29,971 INFO L290 TraceCheckUtils]: 59: Hoare triple {168904#(< ~counter~0 96)} assume !!(#t~post6 < 100);havoc #t~post6; {168904#(< ~counter~0 96)} is VALID [2022-04-28 05:58:29,972 INFO L290 TraceCheckUtils]: 58: Hoare triple {168914#(< ~counter~0 95)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {168904#(< ~counter~0 96)} is VALID [2022-04-28 05:58:29,972 INFO L290 TraceCheckUtils]: 57: Hoare triple {168914#(< ~counter~0 95)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {168914#(< ~counter~0 95)} is VALID [2022-04-28 05:58:29,973 INFO L290 TraceCheckUtils]: 56: Hoare triple {168914#(< ~counter~0 95)} assume !(~c~0 >= ~b~0); {168914#(< ~counter~0 95)} is VALID [2022-04-28 05:58:29,973 INFO L290 TraceCheckUtils]: 55: Hoare triple {168914#(< ~counter~0 95)} assume !!(#t~post7 < 100);havoc #t~post7; {168914#(< ~counter~0 95)} is VALID [2022-04-28 05:58:29,974 INFO L290 TraceCheckUtils]: 54: Hoare triple {168927#(< ~counter~0 94)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {168914#(< ~counter~0 95)} is VALID [2022-04-28 05:58:29,974 INFO L290 TraceCheckUtils]: 53: Hoare triple {168927#(< ~counter~0 94)} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,975 INFO L290 TraceCheckUtils]: 52: Hoare triple {168927#(< ~counter~0 94)} assume !(~c~0 >= 2 * ~v~0); {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,975 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {168446#true} {168927#(< ~counter~0 94)} #104#return; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,975 INFO L290 TraceCheckUtils]: 50: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,975 INFO L290 TraceCheckUtils]: 49: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,976 INFO L290 TraceCheckUtils]: 48: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,976 INFO L272 TraceCheckUtils]: 47: Hoare triple {168927#(< ~counter~0 94)} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,976 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {168446#true} {168927#(< ~counter~0 94)} #102#return; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,976 INFO L290 TraceCheckUtils]: 45: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,976 INFO L290 TraceCheckUtils]: 44: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,977 INFO L290 TraceCheckUtils]: 43: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,977 INFO L272 TraceCheckUtils]: 42: Hoare triple {168927#(< ~counter~0 94)} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,977 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {168446#true} {168927#(< ~counter~0 94)} #100#return; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,977 INFO L290 TraceCheckUtils]: 40: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,978 INFO L290 TraceCheckUtils]: 39: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,978 INFO L290 TraceCheckUtils]: 38: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,978 INFO L272 TraceCheckUtils]: 37: Hoare triple {168927#(< ~counter~0 94)} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,978 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {168446#true} {168927#(< ~counter~0 94)} #98#return; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,978 INFO L290 TraceCheckUtils]: 35: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,979 INFO L290 TraceCheckUtils]: 34: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,979 INFO L290 TraceCheckUtils]: 33: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,979 INFO L272 TraceCheckUtils]: 32: Hoare triple {168927#(< ~counter~0 94)} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,979 INFO L290 TraceCheckUtils]: 31: Hoare triple {168927#(< ~counter~0 94)} assume !!(#t~post8 < 100);havoc #t~post8; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,980 INFO L290 TraceCheckUtils]: 30: Hoare triple {169000#(< ~counter~0 93)} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {168927#(< ~counter~0 94)} is VALID [2022-04-28 05:58:29,981 INFO L290 TraceCheckUtils]: 29: Hoare triple {169000#(< ~counter~0 93)} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {169000#(< ~counter~0 93)} is VALID [2022-04-28 05:58:29,981 INFO L290 TraceCheckUtils]: 28: Hoare triple {169000#(< ~counter~0 93)} assume !!(#t~post7 < 100);havoc #t~post7; {169000#(< ~counter~0 93)} is VALID [2022-04-28 05:58:29,982 INFO L290 TraceCheckUtils]: 27: Hoare triple {169010#(< ~counter~0 92)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {169000#(< ~counter~0 93)} is VALID [2022-04-28 05:58:29,982 INFO L290 TraceCheckUtils]: 26: Hoare triple {169010#(< ~counter~0 92)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {169010#(< ~counter~0 92)} is VALID [2022-04-28 05:58:29,983 INFO L290 TraceCheckUtils]: 25: Hoare triple {169010#(< ~counter~0 92)} assume !!(#t~post6 < 100);havoc #t~post6; {169010#(< ~counter~0 92)} is VALID [2022-04-28 05:58:29,984 INFO L290 TraceCheckUtils]: 24: Hoare triple {169020#(< ~counter~0 91)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {169010#(< ~counter~0 92)} is VALID [2022-04-28 05:58:29,984 INFO L290 TraceCheckUtils]: 23: Hoare triple {169020#(< ~counter~0 91)} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {169020#(< ~counter~0 91)} is VALID [2022-04-28 05:58:29,984 INFO L290 TraceCheckUtils]: 22: Hoare triple {169020#(< ~counter~0 91)} assume !(~c~0 >= ~b~0); {169020#(< ~counter~0 91)} is VALID [2022-04-28 05:58:29,985 INFO L290 TraceCheckUtils]: 21: Hoare triple {169020#(< ~counter~0 91)} assume !!(#t~post7 < 100);havoc #t~post7; {169020#(< ~counter~0 91)} is VALID [2022-04-28 05:58:29,986 INFO L290 TraceCheckUtils]: 20: Hoare triple {169033#(< ~counter~0 90)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {169020#(< ~counter~0 91)} is VALID [2022-04-28 05:58:29,986 INFO L290 TraceCheckUtils]: 19: Hoare triple {169033#(< ~counter~0 90)} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {169033#(< ~counter~0 90)} is VALID [2022-04-28 05:58:29,987 INFO L290 TraceCheckUtils]: 18: Hoare triple {169033#(< ~counter~0 90)} assume !!(#t~post6 < 100);havoc #t~post6; {169033#(< ~counter~0 90)} is VALID [2022-04-28 05:58:29,988 INFO L290 TraceCheckUtils]: 17: Hoare triple {169043#(< ~counter~0 89)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {169033#(< ~counter~0 90)} is VALID [2022-04-28 05:58:29,988 INFO L290 TraceCheckUtils]: 16: Hoare triple {169043#(< ~counter~0 89)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,989 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {168446#true} {169043#(< ~counter~0 89)} #96#return; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,989 INFO L290 TraceCheckUtils]: 14: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,989 INFO L290 TraceCheckUtils]: 13: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,989 INFO L272 TraceCheckUtils]: 11: Hoare triple {169043#(< ~counter~0 89)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,989 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168446#true} {169043#(< ~counter~0 89)} #94#return; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,990 INFO L290 TraceCheckUtils]: 9: Hoare triple {168446#true} assume true; {168446#true} is VALID [2022-04-28 05:58:29,990 INFO L290 TraceCheckUtils]: 8: Hoare triple {168446#true} assume !(0 == ~cond); {168446#true} is VALID [2022-04-28 05:58:29,990 INFO L290 TraceCheckUtils]: 7: Hoare triple {168446#true} ~cond := #in~cond; {168446#true} is VALID [2022-04-28 05:58:29,990 INFO L272 TraceCheckUtils]: 6: Hoare triple {169043#(< ~counter~0 89)} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {168446#true} is VALID [2022-04-28 05:58:29,990 INFO L290 TraceCheckUtils]: 5: Hoare triple {169043#(< ~counter~0 89)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,990 INFO L272 TraceCheckUtils]: 4: Hoare triple {169043#(< ~counter~0 89)} call #t~ret9 := main(); {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,991 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {169043#(< ~counter~0 89)} {168446#true} #108#return; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,991 INFO L290 TraceCheckUtils]: 2: Hoare triple {169043#(< ~counter~0 89)} assume true; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,992 INFO L290 TraceCheckUtils]: 1: Hoare triple {168446#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {169043#(< ~counter~0 89)} is VALID [2022-04-28 05:58:29,992 INFO L272 TraceCheckUtils]: 0: Hoare triple {168446#true} call ULTIMATE.init(); {168446#true} is VALID [2022-04-28 05:58:29,992 INFO L134 CoverageAnalysis]: Checked inductivity of 212 backedges. 27 proven. 69 refuted. 0 times theorem prover too weak. 116 trivial. 0 not checked. [2022-04-28 05:58:29,992 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:58:29,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1542658415] [2022-04-28 05:58:29,993 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:58:29,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1288828828] [2022-04-28 05:58:29,993 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1288828828] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:58:29,993 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:58:29,993 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 15] total 28 [2022-04-28 05:58:29,993 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:58:29,993 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [250202167] [2022-04-28 05:58:29,993 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [250202167] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:58:29,993 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:58:29,993 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 05:58:29,994 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1434744651] [2022-04-28 05:58:29,994 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:58:29,994 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 05:58:29,994 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:58:29,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:30,083 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:30,084 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 05:58:30,084 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:30,084 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 05:58:30,084 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=330, Invalid=426, Unknown=0, NotChecked=0, Total=756 [2022-04-28 05:58:30,084 INFO L87 Difference]: Start difference. First operand 1825 states and 2413 transitions. Second operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:37,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:37,872 INFO L93 Difference]: Finished difference Result 2758 states and 3762 transitions. [2022-04-28 05:58:37,872 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 05:58:37,872 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) Word has length 104 [2022-04-28 05:58:37,872 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 05:58:37,872 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:37,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 05:58:37,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:37,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 314 transitions. [2022-04-28 05:58:37,876 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 314 transitions. [2022-04-28 05:58:38,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 314 edges. 314 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:38,430 INFO L225 Difference]: With dead ends: 2758 [2022-04-28 05:58:38,430 INFO L226 Difference]: Without dead ends: 2189 [2022-04-28 05:58:38,432 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 216 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 75 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=556, Invalid=776, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 05:58:38,432 INFO L413 NwaCegarLoop]: 77 mSDtfsCounter, 275 mSDsluCounter, 271 mSDsCounter, 0 mSdLazyCounter, 178 mSolverCounterSat, 167 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 275 SdHoareTripleChecker+Valid, 348 SdHoareTripleChecker+Invalid, 345 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 167 IncrementalHoareTripleChecker+Valid, 178 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 05:58:38,432 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [275 Valid, 348 Invalid, 345 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [167 Valid, 178 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 05:58:38,433 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2189 states. [2022-04-28 05:58:44,201 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2189 to 2064. [2022-04-28 05:58:44,201 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 05:58:44,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:44,204 INFO L74 IsIncluded]: Start isIncluded. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:44,205 INFO L87 Difference]: Start difference. First operand 2189 states. Second operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:44,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:44,336 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 05:58:44,337 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 05:58:44,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:44,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:44,341 INFO L74 IsIncluded]: Start isIncluded. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 05:58:44,342 INFO L87 Difference]: Start difference. First operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) Second operand 2189 states. [2022-04-28 05:58:44,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 05:58:44,471 INFO L93 Difference]: Finished difference Result 2189 states and 2851 transitions. [2022-04-28 05:58:44,472 INFO L276 IsEmpty]: Start isEmpty. Operand 2189 states and 2851 transitions. [2022-04-28 05:58:44,474 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 05:58:44,474 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 05:58:44,474 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 05:58:44,474 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 05:58:44,476 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2064 states, 1436 states have (on average 1.2395543175487465) internal successors, (1780), 1459 states have internal predecessors, (1780), 474 states have call successors, (474), 155 states have call predecessors, (474), 153 states have return successors, (468), 449 states have call predecessors, (468), 468 states have call successors, (468) [2022-04-28 05:58:44,682 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2064 states to 2064 states and 2722 transitions. [2022-04-28 05:58:44,683 INFO L78 Accepts]: Start accepts. Automaton has 2064 states and 2722 transitions. Word has length 104 [2022-04-28 05:58:44,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 05:58:44,683 INFO L495 AbstractCegarLoop]: Abstraction has 2064 states and 2722 transitions. [2022-04-28 05:58:44,683 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 3.933333333333333) internal successors, (59), 14 states have internal predecessors, (59), 5 states have call successors, (13), 5 states have call predecessors, (13), 3 states have return successors, (11), 3 states have call predecessors, (11), 4 states have call successors, (11) [2022-04-28 05:58:44,683 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2064 states and 2722 transitions. [2022-04-28 05:58:52,133 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2722 edges. 2722 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:58:52,133 INFO L276 IsEmpty]: Start isEmpty. Operand 2064 states and 2722 transitions. [2022-04-28 05:58:52,134 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 109 [2022-04-28 05:58:52,134 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 05:58:52,134 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 05:58:52,150 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-28 05:58:52,335 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-28 05:58:52,335 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 05:58:52,336 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 05:58:52,336 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 7 times [2022-04-28 05:58:52,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 05:58:52,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [174833043] [2022-04-28 05:58:52,336 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 05:58:52,337 INFO L85 PathProgramCache]: Analyzing trace with hash 911562927, now seen corresponding path program 8 times [2022-04-28 05:58:52,337 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 05:58:52,337 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2008672915] [2022-04-28 05:58:52,337 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 05:58:52,337 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 05:58:52,347 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 05:58:52,347 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1696812914] [2022-04-28 05:58:52,347 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 05:58:52,347 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 05:58:52,347 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 05:58:52,348 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 05:58:52,354 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-28 05:58:52,413 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 05:58:52,413 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 05:58:52,414 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 74 conjunts are in the unsatisfiable core [2022-04-28 05:58:52,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 05:58:52,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 05:58:53,865 INFO L272 TraceCheckUtils]: 0: Hoare triple {183137#true} call ULTIMATE.init(); {183137#true} is VALID [2022-04-28 05:58:53,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {183137#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183137#true} {183137#true} #108#return; {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L272 TraceCheckUtils]: 4: Hoare triple {183137#true} call #t~ret9 := main(); {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {183137#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L272 TraceCheckUtils]: 6: Hoare triple {183137#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,866 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183137#true} {183137#true} #94#return; {183137#true} is VALID [2022-04-28 05:58:53,867 INFO L272 TraceCheckUtils]: 11: Hoare triple {183137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,867 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183137#true} {183137#true} #96#return; {183137#true} is VALID [2022-04-28 05:58:53,871 INFO L290 TraceCheckUtils]: 16: Hoare triple {183137#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,871 INFO L290 TraceCheckUtils]: 17: Hoare triple {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,871 INFO L290 TraceCheckUtils]: 18: Hoare triple {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {183190#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,873 INFO L290 TraceCheckUtils]: 21: Hoare triple {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,873 INFO L290 TraceCheckUtils]: 22: Hoare triple {183200#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,874 INFO L290 TraceCheckUtils]: 23: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,874 INFO L290 TraceCheckUtils]: 24: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,874 INFO L272 TraceCheckUtils]: 25: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,874 INFO L290 TraceCheckUtils]: 26: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,874 INFO L290 TraceCheckUtils]: 27: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,874 INFO L290 TraceCheckUtils]: 28: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,875 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,875 INFO L272 TraceCheckUtils]: 30: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,875 INFO L290 TraceCheckUtils]: 31: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,875 INFO L290 TraceCheckUtils]: 32: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,875 INFO L290 TraceCheckUtils]: 33: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,876 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,876 INFO L272 TraceCheckUtils]: 35: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,876 INFO L290 TraceCheckUtils]: 36: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,876 INFO L290 TraceCheckUtils]: 37: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,876 INFO L290 TraceCheckUtils]: 38: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,877 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,877 INFO L272 TraceCheckUtils]: 40: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,877 INFO L290 TraceCheckUtils]: 41: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,877 INFO L290 TraceCheckUtils]: 42: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,878 INFO L290 TraceCheckUtils]: 43: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,878 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183137#true} {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,879 INFO L290 TraceCheckUtils]: 45: Hoare triple {183210#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,879 INFO L290 TraceCheckUtils]: 46: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,880 INFO L290 TraceCheckUtils]: 47: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,880 INFO L272 TraceCheckUtils]: 48: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,880 INFO L290 TraceCheckUtils]: 49: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,880 INFO L290 TraceCheckUtils]: 50: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,880 INFO L290 TraceCheckUtils]: 51: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,881 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,881 INFO L272 TraceCheckUtils]: 53: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,881 INFO L290 TraceCheckUtils]: 54: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,881 INFO L290 TraceCheckUtils]: 55: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,881 INFO L290 TraceCheckUtils]: 56: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,882 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,882 INFO L272 TraceCheckUtils]: 58: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,882 INFO L290 TraceCheckUtils]: 59: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,882 INFO L290 TraceCheckUtils]: 60: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,882 INFO L290 TraceCheckUtils]: 61: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,883 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,883 INFO L272 TraceCheckUtils]: 63: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,883 INFO L290 TraceCheckUtils]: 64: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,883 INFO L290 TraceCheckUtils]: 65: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,883 INFO L290 TraceCheckUtils]: 66: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,884 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183137#true} {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #104#return; {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,884 INFO L290 TraceCheckUtils]: 68: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,886 INFO L290 TraceCheckUtils]: 69: Hoare triple {183280#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~v~0 (* main_~b~0 2)) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,886 INFO L290 TraceCheckUtils]: 70: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,887 INFO L290 TraceCheckUtils]: 71: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,887 INFO L290 TraceCheckUtils]: 72: Hoare triple {183353#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,888 INFO L290 TraceCheckUtils]: 73: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,888 INFO L290 TraceCheckUtils]: 74: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,888 INFO L272 TraceCheckUtils]: 75: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,888 INFO L290 TraceCheckUtils]: 76: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:53,889 INFO L290 TraceCheckUtils]: 77: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:53,889 INFO L290 TraceCheckUtils]: 78: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:53,890 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #98#return; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,890 INFO L272 TraceCheckUtils]: 80: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,890 INFO L290 TraceCheckUtils]: 81: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:53,890 INFO L290 TraceCheckUtils]: 82: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:53,891 INFO L290 TraceCheckUtils]: 83: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:53,891 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #100#return; {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,892 INFO L272 TraceCheckUtils]: 85: Hoare triple {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,892 INFO L290 TraceCheckUtils]: 86: Hoare triple {183137#true} ~cond := #in~cond; {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:53,892 INFO L290 TraceCheckUtils]: 87: Hoare triple {183376#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:53,892 INFO L290 TraceCheckUtils]: 88: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:58:53,893 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183363#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= (+ main_~c~0 (* main_~b~0 2)) main_~a~0) (= main_~k~0 2) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #102#return; {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,894 INFO L272 TraceCheckUtils]: 90: Hoare triple {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:58:53,894 INFO L290 TraceCheckUtils]: 91: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:58:53,894 INFO L290 TraceCheckUtils]: 92: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:58:53,894 INFO L290 TraceCheckUtils]: 93: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:58:53,894 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183137#true} {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} #104#return; {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,895 INFO L290 TraceCheckUtils]: 95: Hoare triple {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} assume !(~c~0 >= 2 * ~v~0); {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,896 INFO L290 TraceCheckUtils]: 96: Hoare triple {183417#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~x~0 (+ main_~c~0 (* main_~b~0 main_~k~0))) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~d~0 1) (= main_~k~0 2) (= main_~q~0 0) (= main_~p~0 1))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,896 INFO L290 TraceCheckUtils]: 97: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,896 INFO L290 TraceCheckUtils]: 98: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !!(#t~post7 < 100);havoc #t~post7; {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,897 INFO L290 TraceCheckUtils]: 99: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} assume !(~c~0 >= ~b~0); {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} is VALID [2022-04-28 05:58:53,897 INFO L290 TraceCheckUtils]: 100: Hoare triple {183439#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= (+ (* main_~b~0 (- 3)) main_~x~0) main_~c~0) (= main_~q~0 0) (= (+ (- 2) main_~k~0) 1) (= main_~p~0 1))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:53,898 INFO L290 TraceCheckUtils]: 101: Hoare triple {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:53,898 INFO L290 TraceCheckUtils]: 102: Hoare triple {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !!(#t~post6 < 100);havoc #t~post6; {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:53,899 INFO L290 TraceCheckUtils]: 103: Hoare triple {183452#(and (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 (+ (* main_~a~0 (- 3)) main_~x~0)) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} assume !(0 != ~b~0); {183462#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} is VALID [2022-04-28 05:58:53,900 INFO L272 TraceCheckUtils]: 104: Hoare triple {183462#(and (= (+ (* main_~a~0 (- 3)) main_~x~0) 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= (+ main_~s~0 (* main_~r~0 3)) 0) (= main_~q~0 1))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:58:53,900 INFO L290 TraceCheckUtils]: 105: Hoare triple {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183470#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:58:53,900 INFO L290 TraceCheckUtils]: 106: Hoare triple {183470#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183138#false} is VALID [2022-04-28 05:58:53,900 INFO L290 TraceCheckUtils]: 107: Hoare triple {183138#false} assume !false; {183138#false} is VALID [2022-04-28 05:58:53,901 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 93 proven. 46 refuted. 0 times theorem prover too weak. 187 trivial. 0 not checked. [2022-04-28 05:58:53,901 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 05:59:52,121 INFO L290 TraceCheckUtils]: 107: Hoare triple {183138#false} assume !false; {183138#false} is VALID [2022-04-28 05:59:52,121 INFO L290 TraceCheckUtils]: 106: Hoare triple {183470#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {183138#false} is VALID [2022-04-28 05:59:52,122 INFO L290 TraceCheckUtils]: 105: Hoare triple {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {183470#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 05:59:52,123 INFO L272 TraceCheckUtils]: 104: Hoare triple {183486#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {183466#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 05:59:52,123 INFO L290 TraceCheckUtils]: 103: Hoare triple {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {183486#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 05:59:52,124 INFO L290 TraceCheckUtils]: 102: Hoare triple {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:59:52,124 INFO L290 TraceCheckUtils]: 101: Hoare triple {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:59:52,312 INFO L290 TraceCheckUtils]: 100: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {183490#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 05:59:52,313 INFO L290 TraceCheckUtils]: 99: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,313 INFO L290 TraceCheckUtils]: 98: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,314 INFO L290 TraceCheckUtils]: 97: Hoare triple {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,360 INFO L290 TraceCheckUtils]: 96: Hoare triple {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183500#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,360 INFO L290 TraceCheckUtils]: 95: Hoare triple {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,361 INFO L284 TraceCheckUtils]: 94: Hoare quadruple {183137#true} {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,361 INFO L290 TraceCheckUtils]: 93: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,362 INFO L290 TraceCheckUtils]: 92: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,362 INFO L290 TraceCheckUtils]: 91: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,362 INFO L272 TraceCheckUtils]: 90: Hoare triple {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,363 INFO L284 TraceCheckUtils]: 89: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183535#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {183513#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,363 INFO L290 TraceCheckUtils]: 88: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:52,363 INFO L290 TraceCheckUtils]: 87: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:52,364 INFO L290 TraceCheckUtils]: 86: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:52,364 INFO L272 TraceCheckUtils]: 85: Hoare triple {183535#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,365 INFO L284 TraceCheckUtils]: 84: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183552#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {183535#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,365 INFO L290 TraceCheckUtils]: 83: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:52,366 INFO L290 TraceCheckUtils]: 82: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:52,366 INFO L290 TraceCheckUtils]: 81: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:52,377 INFO L272 TraceCheckUtils]: 80: Hoare triple {183552#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,381 INFO L284 TraceCheckUtils]: 79: Hoare quadruple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {183552#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,381 INFO L290 TraceCheckUtils]: 78: Hoare triple {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:52,382 INFO L290 TraceCheckUtils]: 77: Hoare triple {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {183380#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 05:59:52,382 INFO L290 TraceCheckUtils]: 76: Hoare triple {183137#true} ~cond := #in~cond; {183545#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 05:59:52,382 INFO L272 TraceCheckUtils]: 75: Hoare triple {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,383 INFO L290 TraceCheckUtils]: 74: Hoare triple {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,383 INFO L290 TraceCheckUtils]: 73: Hoare triple {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 72: Hoare triple {183137#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183568#(or (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~a~0 (+ main_~c~0 (* main_~b~0 main_~k~0)))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 71: Hoare triple {183137#true} assume !!(#t~post7 < 100);havoc #t~post7; {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 70: Hoare triple {183137#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 69: Hoare triple {183137#true} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 68: Hoare triple {183137#true} assume !(~c~0 >= 2 * ~v~0); {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {183137#true} {183137#true} #104#return; {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 66: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 65: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L290 TraceCheckUtils]: 64: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L272 TraceCheckUtils]: 63: Hoare triple {183137#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,589 INFO L284 TraceCheckUtils]: 62: Hoare quadruple {183137#true} {183137#true} #102#return; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 61: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 60: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 59: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L272 TraceCheckUtils]: 58: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {183137#true} {183137#true} #100#return; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 56: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 55: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 54: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L272 TraceCheckUtils]: 53: Hoare triple {183137#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {183137#true} {183137#true} #98#return; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 51: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 50: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 49: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L272 TraceCheckUtils]: 48: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,590 INFO L290 TraceCheckUtils]: 47: Hoare triple {183137#true} assume !!(#t~post8 < 100);havoc #t~post8; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 46: Hoare triple {183137#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 45: Hoare triple {183137#true} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L284 TraceCheckUtils]: 44: Hoare quadruple {183137#true} {183137#true} #104#return; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 43: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 42: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 41: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L272 TraceCheckUtils]: 40: Hoare triple {183137#true} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {183137#true} {183137#true} #102#return; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 38: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 37: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 36: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L272 TraceCheckUtils]: 35: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L284 TraceCheckUtils]: 34: Hoare quadruple {183137#true} {183137#true} #100#return; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 33: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 32: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,591 INFO L290 TraceCheckUtils]: 31: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L272 TraceCheckUtils]: 30: Hoare triple {183137#true} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {183137#true} {183137#true} #98#return; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 28: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 27: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 26: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L272 TraceCheckUtils]: 25: Hoare triple {183137#true} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 24: Hoare triple {183137#true} assume !!(#t~post8 < 100);havoc #t~post8; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {183137#true} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {183137#true} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 21: Hoare triple {183137#true} assume !!(#t~post7 < 100);havoc #t~post7; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {183137#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 19: Hoare triple {183137#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {183137#true} assume !!(#t~post6 < 100);havoc #t~post6; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 17: Hoare triple {183137#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {183137#true} is VALID [2022-04-28 05:59:52,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {183137#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {183137#true} {183137#true} #96#return; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 14: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 13: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 12: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L272 TraceCheckUtils]: 11: Hoare triple {183137#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {183137#true} {183137#true} #94#return; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {183137#true} assume !(0 == ~cond); {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {183137#true} ~cond := #in~cond; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L272 TraceCheckUtils]: 6: Hoare triple {183137#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 5: Hoare triple {183137#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L272 TraceCheckUtils]: 4: Hoare triple {183137#true} call #t~ret9 := main(); {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {183137#true} {183137#true} #108#return; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 2: Hoare triple {183137#true} assume true; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L290 TraceCheckUtils]: 1: Hoare triple {183137#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {183137#true} is VALID [2022-04-28 05:59:52,593 INFO L272 TraceCheckUtils]: 0: Hoare triple {183137#true} call ULTIMATE.init(); {183137#true} is VALID [2022-04-28 05:59:52,594 INFO L134 CoverageAnalysis]: Checked inductivity of 326 backedges. 117 proven. 12 refuted. 0 times theorem prover too weak. 197 trivial. 0 not checked. [2022-04-28 05:59:52,594 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 05:59:52,594 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2008672915] [2022-04-28 05:59:52,594 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 05:59:52,594 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1696812914] [2022-04-28 05:59:52,595 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1696812914] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 05:59:52,595 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 05:59:52,595 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 13] total 24 [2022-04-28 05:59:52,595 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 05:59:52,595 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [174833043] [2022-04-28 05:59:52,595 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [174833043] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 05:59:52,595 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 05:59:52,595 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 05:59:52,595 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1184307070] [2022-04-28 05:59:52,595 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 05:59:52,596 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 05:59:52,596 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 05:59:52,596 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 05:59:52,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 05:59:52,707 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 05:59:52,707 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 05:59:52,707 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 05:59:52,708 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=455, Unknown=0, NotChecked=0, Total=552 [2022-04-28 05:59:52,708 INFO L87 Difference]: Start difference. First operand 2064 states and 2722 transitions. Second operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:02,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:02,523 INFO L93 Difference]: Finished difference Result 2130 states and 2803 transitions. [2022-04-28 06:00:02,523 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 06:00:02,523 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) Word has length 108 [2022-04-28 06:00:02,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:00:02,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:02,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 06:00:02,525 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:02,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 179 transitions. [2022-04-28 06:00:02,527 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 179 transitions. [2022-04-28 06:00:02,881 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 179 edges. 179 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:03,091 INFO L225 Difference]: With dead ends: 2130 [2022-04-28 06:00:03,091 INFO L226 Difference]: Without dead ends: 2125 [2022-04-28 06:00:03,092 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 219 GetRequests, 192 SyntacticMatches, 1 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 163 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=122, Invalid=634, Unknown=0, NotChecked=0, Total=756 [2022-04-28 06:00:03,092 INFO L413 NwaCegarLoop]: 65 mSDtfsCounter, 80 mSDsluCounter, 482 mSDsCounter, 0 mSdLazyCounter, 903 mSolverCounterSat, 86 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 98 SdHoareTripleChecker+Valid, 547 SdHoareTripleChecker+Invalid, 989 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 86 IncrementalHoareTripleChecker+Valid, 903 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-28 06:00:03,092 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [98 Valid, 547 Invalid, 989 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [86 Valid, 903 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-28 06:00:03,093 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2125 states. [2022-04-28 06:00:10,358 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2125 to 2071. [2022-04-28 06:00:10,360 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:00:10,363 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:10,365 INFO L74 IsIncluded]: Start isIncluded. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:10,366 INFO L87 Difference]: Start difference. First operand 2125 states. Second operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:10,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:10,553 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 06:00:10,553 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 06:00:10,568 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:10,568 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:10,571 INFO L74 IsIncluded]: Start isIncluded. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 06:00:10,573 INFO L87 Difference]: Start difference. First operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) Second operand 2125 states. [2022-04-28 06:00:10,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:00:10,773 INFO L93 Difference]: Finished difference Result 2125 states and 2797 transitions. [2022-04-28 06:00:10,773 INFO L276 IsEmpty]: Start isEmpty. Operand 2125 states and 2797 transitions. [2022-04-28 06:00:10,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:00:10,777 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:00:10,777 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:00:10,777 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:00:10,780 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2071 states, 1442 states have (on average 1.2371705963938973) internal successors, (1784), 1466 states have internal predecessors, (1784), 471 states have call successors, (471), 158 states have call predecessors, (471), 157 states have return successors, (466), 446 states have call predecessors, (466), 466 states have call successors, (466) [2022-04-28 06:00:11,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2071 states to 2071 states and 2721 transitions. [2022-04-28 06:00:11,068 INFO L78 Accepts]: Start accepts. Automaton has 2071 states and 2721 transitions. Word has length 108 [2022-04-28 06:00:11,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:00:11,068 INFO L495 AbstractCegarLoop]: Abstraction has 2071 states and 2721 transitions. [2022-04-28 06:00:11,069 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 2.8666666666666667) internal successors, (43), 15 states have internal predecessors, (43), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 5 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-28 06:00:11,069 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2071 states and 2721 transitions. [2022-04-28 06:00:20,364 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2721 edges. 2721 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:00:20,365 INFO L276 IsEmpty]: Start isEmpty. Operand 2071 states and 2721 transitions. [2022-04-28 06:00:20,366 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 112 [2022-04-28 06:00:20,366 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:00:20,366 INFO L195 NwaCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:00:20,399 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-28 06:00:20,567 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable40 [2022-04-28 06:00:20,567 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:00:20,567 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:00:20,567 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 9 times [2022-04-28 06:00:20,567 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:00:20,567 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1520772808] [2022-04-28 06:00:20,568 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:00:20,568 INFO L85 PathProgramCache]: Analyzing trace with hash -373909618, now seen corresponding path program 10 times [2022-04-28 06:00:20,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:00:20,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [25788224] [2022-04-28 06:00:20,568 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:00:20,568 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:00:20,580 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:00:20,581 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [863469580] [2022-04-28 06:00:20,581 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-28 06:00:20,581 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:00:20,581 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:00:20,585 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:00:20,588 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-28 06:00:20,681 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-28 06:00:20,681 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:00:20,683 INFO L263 TraceCheckSpWp]: Trace formula consists of 267 conjuncts, 89 conjunts are in the unsatisfiable core [2022-04-28 06:00:20,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:00:20,717 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:00:49,433 INFO L272 TraceCheckUtils]: 0: Hoare triple {196468#true} call ULTIMATE.init(); {196468#true} is VALID [2022-04-28 06:00:49,433 INFO L290 TraceCheckUtils]: 1: Hoare triple {196468#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {196468#true} is VALID [2022-04-28 06:00:49,433 INFO L290 TraceCheckUtils]: 2: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,433 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196468#true} {196468#true} #108#return; {196468#true} is VALID [2022-04-28 06:00:49,434 INFO L272 TraceCheckUtils]: 4: Hoare triple {196468#true} call #t~ret9 := main(); {196468#true} is VALID [2022-04-28 06:00:49,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {196468#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196468#true} is VALID [2022-04-28 06:00:49,434 INFO L272 TraceCheckUtils]: 6: Hoare triple {196468#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {196468#true} ~cond := #in~cond; {196494#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-28 06:00:49,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {196494#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {196498#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:00:49,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {196498#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {196498#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-28 06:00:49,435 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196498#(not (= |assume_abort_if_not_#in~cond| 0))} {196468#true} #94#return; {196505#(<= 1 main_~x~0)} is VALID [2022-04-28 06:00:49,436 INFO L272 TraceCheckUtils]: 11: Hoare triple {196505#(<= 1 main_~x~0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,436 INFO L290 TraceCheckUtils]: 12: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,436 INFO L290 TraceCheckUtils]: 13: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,436 INFO L290 TraceCheckUtils]: 14: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,436 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196468#true} {196505#(<= 1 main_~x~0)} #96#return; {196505#(<= 1 main_~x~0)} is VALID [2022-04-28 06:00:49,437 INFO L290 TraceCheckUtils]: 16: Hoare triple {196505#(<= 1 main_~x~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,437 INFO L290 TraceCheckUtils]: 17: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {196524#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:49,439 INFO L290 TraceCheckUtils]: 20: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:49,439 INFO L290 TraceCheckUtils]: 21: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:49,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:00:49,440 INFO L290 TraceCheckUtils]: 23: Hoare triple {196534#(and (= main_~r~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:49,441 INFO L290 TraceCheckUtils]: 24: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:49,441 INFO L290 TraceCheckUtils]: 25: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:49,442 INFO L290 TraceCheckUtils]: 26: Hoare triple {196547#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:49,442 INFO L290 TraceCheckUtils]: 27: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:49,443 INFO L290 TraceCheckUtils]: 28: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:00:49,459 INFO L290 TraceCheckUtils]: 29: Hoare triple {196557#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,460 INFO L290 TraceCheckUtils]: 30: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,461 INFO L290 TraceCheckUtils]: 31: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(#t~post8 < 100);havoc #t~post8; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,461 INFO L272 TraceCheckUtils]: 32: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,461 INFO L290 TraceCheckUtils]: 33: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,461 INFO L290 TraceCheckUtils]: 34: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,461 INFO L290 TraceCheckUtils]: 35: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,462 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #98#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,462 INFO L272 TraceCheckUtils]: 37: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,462 INFO L290 TraceCheckUtils]: 38: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,462 INFO L290 TraceCheckUtils]: 39: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,462 INFO L290 TraceCheckUtils]: 40: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,463 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #100#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,463 INFO L272 TraceCheckUtils]: 42: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,463 INFO L290 TraceCheckUtils]: 43: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,463 INFO L290 TraceCheckUtils]: 44: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,464 INFO L290 TraceCheckUtils]: 45: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,464 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #102#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,464 INFO L272 TraceCheckUtils]: 47: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,465 INFO L290 TraceCheckUtils]: 48: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,465 INFO L290 TraceCheckUtils]: 49: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,465 INFO L290 TraceCheckUtils]: 50: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,466 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196468#true} {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} #104#return; {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} is VALID [2022-04-28 06:00:49,466 INFO L290 TraceCheckUtils]: 52: Hoare triple {196567#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 1))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:00:49,467 INFO L290 TraceCheckUtils]: 53: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:00:49,467 INFO L290 TraceCheckUtils]: 54: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} assume !!(#t~post8 < 100);havoc #t~post8; {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} is VALID [2022-04-28 06:00:49,467 INFO L272 TraceCheckUtils]: 55: Hoare triple {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,468 INFO L290 TraceCheckUtils]: 56: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:49,468 INFO L290 TraceCheckUtils]: 57: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:49,468 INFO L290 TraceCheckUtils]: 58: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:49,470 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196637#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0) (= main_~d~0 2))} #98#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,470 INFO L272 TraceCheckUtils]: 60: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,470 INFO L290 TraceCheckUtils]: 61: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,470 INFO L290 TraceCheckUtils]: 62: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,470 INFO L290 TraceCheckUtils]: 63: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,471 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,471 INFO L272 TraceCheckUtils]: 65: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,471 INFO L290 TraceCheckUtils]: 66: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,471 INFO L290 TraceCheckUtils]: 67: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,471 INFO L290 TraceCheckUtils]: 68: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,472 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,472 INFO L272 TraceCheckUtils]: 70: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,472 INFO L290 TraceCheckUtils]: 71: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,472 INFO L290 TraceCheckUtils]: 72: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,472 INFO L290 TraceCheckUtils]: 73: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,473 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196468#true} {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,475 INFO L290 TraceCheckUtils]: 75: Hoare triple {196661#(and (= main_~s~0 0) (= main_~v~0 (* main_~b~0 2)) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~d~0 2) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,476 INFO L290 TraceCheckUtils]: 76: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,477 INFO L290 TraceCheckUtils]: 77: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,477 INFO L272 TraceCheckUtils]: 78: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,477 INFO L290 TraceCheckUtils]: 79: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,477 INFO L290 TraceCheckUtils]: 80: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,477 INFO L290 TraceCheckUtils]: 81: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,478 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196468#true} {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #98#return; {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,478 INFO L272 TraceCheckUtils]: 83: Hoare triple {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,478 INFO L290 TraceCheckUtils]: 84: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:49,479 INFO L290 TraceCheckUtils]: 85: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:49,479 INFO L290 TraceCheckUtils]: 86: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:49,480 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196710#(and (= main_~s~0 0) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,481 INFO L272 TraceCheckUtils]: 88: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,481 INFO L290 TraceCheckUtils]: 89: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:00:49,481 INFO L290 TraceCheckUtils]: 90: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:00:49,481 INFO L290 TraceCheckUtils]: 91: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:00:49,482 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196468#true} {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,482 INFO L272 TraceCheckUtils]: 93: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:00:49,482 INFO L290 TraceCheckUtils]: 94: Hoare triple {196468#true} ~cond := #in~cond; {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:49,483 INFO L290 TraceCheckUtils]: 95: Hoare triple {196650#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:49,483 INFO L290 TraceCheckUtils]: 96: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:00:49,484 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,485 INFO L290 TraceCheckUtils]: 98: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,486 INFO L290 TraceCheckUtils]: 99: Hoare triple {196747#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~k~0 0) (= main_~c~0 main_~y~0) (= main_~r~0 1) (= main_~d~0 4) (<= (* main_~b~0 4) main_~c~0) (= main_~b~0 main_~x~0) (= main_~v~0 (* main_~b~0 4)) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,487 INFO L290 TraceCheckUtils]: 100: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,488 INFO L290 TraceCheckUtils]: 101: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,489 INFO L290 TraceCheckUtils]: 102: Hoare triple {196784#(and (= main_~s~0 0) (= (+ (* (- 1) main_~c~0) (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (* main_~b~0 4)) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (<= 1 main_~x~0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {196794#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:00:49,491 INFO L290 TraceCheckUtils]: 103: Hoare triple {196794#(and (= main_~s~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= (+ main_~c~0 (* main_~b~0 4)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~k~0 4) (= main_~y~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (< main_~c~0 main_~b~0) (<= (* main_~b~0 4) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,492 INFO L290 TraceCheckUtils]: 104: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,493 INFO L290 TraceCheckUtils]: 105: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,494 INFO L290 TraceCheckUtils]: 106: Hoare triple {196798#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~p~0 main_~x~0 4) (* main_~a~0 (- 4)) (* main_~q~0 main_~x~0) main_~y~0)) (= main_~s~0 1) (= (+ main_~y~0 (* (+ main_~q~0 (* main_~p~0 4)) main_~x~0)) main_~y~0) (= main_~a~0 (* main_~p~0 main_~x~0)) (<= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} assume !(0 != ~b~0); {196808#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:00:49,495 INFO L272 TraceCheckUtils]: 107: Hoare triple {196808#(and (= main_~r~0 0) (= (* main_~a~0 4) (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4))) (= main_~s~0 1) (= (+ (* main_~q~0 main_~x~0) (* (* main_~p~0 main_~x~0) 4)) 0) (= main_~a~0 (* main_~p~0 main_~x~0)) (< (+ (* main_~q~0 main_~x~0) main_~y~0 (* (* main_~p~0 main_~x~0) 4)) (* 5 main_~a~0)) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:00:49,496 INFO L290 TraceCheckUtils]: 108: Hoare triple {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196816#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:00:49,496 INFO L290 TraceCheckUtils]: 109: Hoare triple {196816#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196469#false} is VALID [2022-04-28 06:00:49,496 INFO L290 TraceCheckUtils]: 110: Hoare triple {196469#false} assume !false; {196469#false} is VALID [2022-04-28 06:00:49,497 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 84 proven. 64 refuted. 0 times theorem prover too weak. 184 trivial. 0 not checked. [2022-04-28 06:00:49,497 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 06:01:51,362 INFO L290 TraceCheckUtils]: 110: Hoare triple {196469#false} assume !false; {196469#false} is VALID [2022-04-28 06:01:51,364 INFO L290 TraceCheckUtils]: 109: Hoare triple {196816#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {196469#false} is VALID [2022-04-28 06:01:51,364 INFO L290 TraceCheckUtils]: 108: Hoare triple {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {196816#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:01:51,365 INFO L272 TraceCheckUtils]: 107: Hoare triple {196832#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} call __VERIFIER_assert((if ~p~0 * ~x~0 - ~q~0 * ~x~0 + ~r~0 * ~y~0 - ~s~0 * ~y~0 == ~a~0 then 1 else 0)); {196812#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:01:51,365 INFO L290 TraceCheckUtils]: 106: Hoare triple {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !(0 != ~b~0); {196832#(= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))} is VALID [2022-04-28 06:01:51,366 INFO L290 TraceCheckUtils]: 105: Hoare triple {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} assume !!(#t~post6 < 100);havoc #t~post6; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:01:51,366 INFO L290 TraceCheckUtils]: 104: Hoare triple {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:01:51,669 INFO L290 TraceCheckUtils]: 103: Hoare triple {196846#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196836#(or (= (+ (* main_~q~0 main_~x~0) main_~a~0 (* main_~y~0 main_~s~0)) (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (not (= main_~b~0 0)))} is VALID [2022-04-28 06:01:51,670 INFO L290 TraceCheckUtils]: 102: Hoare triple {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= ~b~0); {196846#(or (not (= main_~c~0 0)) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:51,671 INFO L290 TraceCheckUtils]: 101: Hoare triple {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:51,671 INFO L290 TraceCheckUtils]: 100: Hoare triple {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,516 INFO L290 TraceCheckUtils]: 99: Hoare triple {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {196850#(or (not (= main_~c~0 0)) (<= main_~b~0 main_~c~0) (= (+ (* (+ (* (* main_~k~0 main_~s~0) (- 1)) main_~r~0) main_~y~0) main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 main_~k~0)) main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,518 INFO L290 TraceCheckUtils]: 98: Hoare triple {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !(~c~0 >= 2 * ~v~0); {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,519 INFO L284 TraceCheckUtils]: 97: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #104#return; {196860#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,519 INFO L290 TraceCheckUtils]: 96: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:53,520 INFO L290 TraceCheckUtils]: 95: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:53,520 INFO L290 TraceCheckUtils]: 94: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:01:53,520 INFO L272 TraceCheckUtils]: 93: Hoare triple {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,521 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {196468#true} {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #102#return; {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,521 INFO L290 TraceCheckUtils]: 91: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,521 INFO L290 TraceCheckUtils]: 90: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,522 INFO L290 TraceCheckUtils]: 89: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,522 INFO L272 TraceCheckUtils]: 88: Hoare triple {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,523 INFO L284 TraceCheckUtils]: 87: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #100#return; {196867#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,523 INFO L290 TraceCheckUtils]: 86: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:53,524 INFO L290 TraceCheckUtils]: 85: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:53,524 INFO L290 TraceCheckUtils]: 84: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:01:53,524 INFO L272 TraceCheckUtils]: 83: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,525 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {196468#true} {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #98#return; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,525 INFO L290 TraceCheckUtils]: 81: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,525 INFO L290 TraceCheckUtils]: 80: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,525 INFO L290 TraceCheckUtils]: 79: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,526 INFO L272 TraceCheckUtils]: 78: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,526 INFO L290 TraceCheckUtils]: 77: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,527 INFO L290 TraceCheckUtils]: 76: Hoare triple {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,634 INFO L290 TraceCheckUtils]: 75: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196899#(or (<= (+ main_~b~0 main_~v~0) main_~c~0) (not (= (+ main_~c~0 (* (- 1) main_~v~0)) 0)) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= main_~v~0 (* main_~d~0 main_~b~0))) (= (+ main_~b~0 (* (+ main_~p~0 (* (- 1) main_~q~0 (+ main_~d~0 main_~k~0))) main_~x~0) (* (+ (* (- 1) (* main_~s~0 (+ main_~d~0 main_~k~0))) main_~r~0) main_~y~0)) (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))))} is VALID [2022-04-28 06:01:53,636 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {196468#true} {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #104#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,636 INFO L290 TraceCheckUtils]: 73: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,636 INFO L290 TraceCheckUtils]: 72: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,636 INFO L290 TraceCheckUtils]: 71: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,636 INFO L272 TraceCheckUtils]: 70: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,637 INFO L284 TraceCheckUtils]: 69: Hoare quadruple {196468#true} {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #102#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,637 INFO L290 TraceCheckUtils]: 68: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,637 INFO L290 TraceCheckUtils]: 67: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,637 INFO L290 TraceCheckUtils]: 66: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,637 INFO L272 TraceCheckUtils]: 65: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,638 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {196468#true} {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #100#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,638 INFO L290 TraceCheckUtils]: 63: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,638 INFO L290 TraceCheckUtils]: 62: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,638 INFO L290 TraceCheckUtils]: 61: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,638 INFO L272 TraceCheckUtils]: 60: Hoare triple {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,640 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #98#return; {196936#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,640 INFO L290 TraceCheckUtils]: 58: Hoare triple {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:53,640 INFO L290 TraceCheckUtils]: 57: Hoare triple {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {196654#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:01:53,641 INFO L290 TraceCheckUtils]: 56: Hoare triple {196468#true} ~cond := #in~cond; {196877#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 06:01:53,641 INFO L272 TraceCheckUtils]: 55: Hoare triple {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,642 INFO L290 TraceCheckUtils]: 54: Hoare triple {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} assume !!(#t~post8 < 100);havoc #t~post8; {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,642 INFO L290 TraceCheckUtils]: 53: Hoare triple {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,675 INFO L290 TraceCheckUtils]: 52: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(~c~0 >= 2 * ~v~0);~d~0 := 2 * ~d~0;~v~0 := 2 * ~v~0; {196985#(or (not (= (* main_~v~0 2) main_~c~0)) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* main_~k~0 main_~y~0 main_~s~0) (* (* main_~d~0 main_~y~0 main_~s~0) 2) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~d~0 main_~q~0 main_~x~0)))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (<= (+ (* main_~v~0 2) main_~b~0) main_~c~0) (not (= (* 2 (* main_~d~0 main_~b~0)) (* main_~v~0 2))))} is VALID [2022-04-28 06:01:53,677 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #104#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,677 INFO L290 TraceCheckUtils]: 50: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,677 INFO L290 TraceCheckUtils]: 49: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,677 INFO L290 TraceCheckUtils]: 48: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,677 INFO L272 TraceCheckUtils]: 47: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,678 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #102#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,678 INFO L290 TraceCheckUtils]: 45: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,678 INFO L290 TraceCheckUtils]: 44: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,678 INFO L290 TraceCheckUtils]: 43: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,678 INFO L272 TraceCheckUtils]: 42: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,679 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #100#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,679 INFO L290 TraceCheckUtils]: 40: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,679 INFO L290 TraceCheckUtils]: 39: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,680 INFO L290 TraceCheckUtils]: 38: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,680 INFO L272 TraceCheckUtils]: 37: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,681 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {196468#true} {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #98#return; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,681 INFO L290 TraceCheckUtils]: 35: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,681 INFO L290 TraceCheckUtils]: 34: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,681 INFO L290 TraceCheckUtils]: 33: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,681 INFO L272 TraceCheckUtils]: 32: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,682 INFO L290 TraceCheckUtils]: 31: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} assume !!(#t~post8 < 100);havoc #t~post8; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,683 INFO L290 TraceCheckUtils]: 30: Hoare triple {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,684 INFO L290 TraceCheckUtils]: 29: Hoare triple {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {197007#(or (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 (* main_~d~0 2))) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* 2 (* main_~q~0 main_~x~0 (* main_~d~0 2))) (* main_~y~0 main_~s~0))) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (not (= (* main_~v~0 2) (* main_~d~0 main_~b~0 2))) (<= (+ main_~b~0 (* (* main_~d~0 main_~b~0) 4)) main_~c~0) (not (= main_~c~0 (* (* main_~d~0 main_~b~0 2) 2))))} is VALID [2022-04-28 06:01:53,685 INFO L290 TraceCheckUtils]: 28: Hoare triple {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} assume !!(#t~post7 < 100);havoc #t~post7; {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:01:53,685 INFO L290 TraceCheckUtils]: 27: Hoare triple {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 26: Hoare triple {196468#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {197077#(or (<= (* 5 main_~b~0) main_~c~0) (not (= main_~a~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)))) (not (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0)))) (= (+ (* main_~y~0 main_~r~0) main_~b~0 (* main_~p~0 main_~x~0)) (+ (* main_~q~0 main_~x~0) (* 2 (* main_~y~0 main_~s~0 2)) (* main_~k~0 main_~y~0 main_~s~0) (* main_~q~0 main_~k~0 main_~x~0) (* main_~y~0 main_~s~0) (* 2 (* main_~q~0 main_~x~0 2)))) (not (= main_~c~0 (* main_~b~0 4))))} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 25: Hoare triple {196468#true} assume !!(#t~post6 < 100);havoc #t~post6; {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 24: Hoare triple {196468#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 23: Hoare triple {196468#true} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 22: Hoare triple {196468#true} assume !(~c~0 >= ~b~0); {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 21: Hoare triple {196468#true} assume !!(#t~post7 < 100);havoc #t~post7; {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {196468#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {196468#true} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {196468#true} is VALID [2022-04-28 06:01:53,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {196468#true} assume !!(#t~post6 < 100);havoc #t~post6; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 17: Hoare triple {196468#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 16: Hoare triple {196468#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {196468#true} {196468#true} #96#return; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 13: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 12: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L272 TraceCheckUtils]: 11: Hoare triple {196468#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {196468#true} {196468#true} #94#return; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 9: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 8: Hoare triple {196468#true} assume !(0 == ~cond); {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L290 TraceCheckUtils]: 7: Hoare triple {196468#true} ~cond := #in~cond; {196468#true} is VALID [2022-04-28 06:01:53,690 INFO L272 TraceCheckUtils]: 6: Hoare triple {196468#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {196468#true} is VALID [2022-04-28 06:01:53,691 INFO L290 TraceCheckUtils]: 5: Hoare triple {196468#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {196468#true} is VALID [2022-04-28 06:01:53,691 INFO L272 TraceCheckUtils]: 4: Hoare triple {196468#true} call #t~ret9 := main(); {196468#true} is VALID [2022-04-28 06:01:53,691 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {196468#true} {196468#true} #108#return; {196468#true} is VALID [2022-04-28 06:01:53,691 INFO L290 TraceCheckUtils]: 2: Hoare triple {196468#true} assume true; {196468#true} is VALID [2022-04-28 06:01:53,691 INFO L290 TraceCheckUtils]: 1: Hoare triple {196468#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {196468#true} is VALID [2022-04-28 06:01:53,691 INFO L272 TraceCheckUtils]: 0: Hoare triple {196468#true} call ULTIMATE.init(); {196468#true} is VALID [2022-04-28 06:01:53,692 INFO L134 CoverageAnalysis]: Checked inductivity of 332 backedges. 97 proven. 45 refuted. 0 times theorem prover too weak. 190 trivial. 0 not checked. [2022-04-28 06:01:53,692 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 06:01:53,692 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [25788224] [2022-04-28 06:01:53,692 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 06:01:53,692 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [863469580] [2022-04-28 06:01:53,692 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [863469580] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 06:01:53,692 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 06:01:53,692 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 17] total 34 [2022-04-28 06:01:53,693 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 06:01:53,693 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1520772808] [2022-04-28 06:01:53,693 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1520772808] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 06:01:53,693 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 06:01:53,693 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 06:01:53,693 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2077004821] [2022-04-28 06:01:53,693 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 06:01:53,694 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 06:01:53,695 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 06:01:53,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:01:53,865 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:01:53,865 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 06:01:53,865 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 06:01:53,865 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 06:01:53,866 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=952, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 06:01:53,866 INFO L87 Difference]: Start difference. First operand 2071 states and 2721 transitions. Second operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:12,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:12,918 INFO L93 Difference]: Finished difference Result 2221 states and 2903 transitions. [2022-04-28 06:02:12,918 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 06:02:12,918 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 111 [2022-04-28 06:02:12,918 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 06:02:12,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:12,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 06:02:12,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:12,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 215 transitions. [2022-04-28 06:02:12,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 215 transitions. [2022-04-28 06:02:13,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 215 edges. 215 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:13,781 INFO L225 Difference]: With dead ends: 2221 [2022-04-28 06:02:13,782 INFO L226 Difference]: Without dead ends: 2218 [2022-04-28 06:02:13,783 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 230 GetRequests, 188 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 440 ImplicationChecksByTransitivity, 3.8s TimeCoverageRelationStatistics Valid=274, Invalid=1532, Unknown=0, NotChecked=0, Total=1806 [2022-04-28 06:02:13,783 INFO L413 NwaCegarLoop]: 81 mSDtfsCounter, 140 mSDsluCounter, 694 mSDsCounter, 0 mSdLazyCounter, 1446 mSolverCounterSat, 99 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 164 SdHoareTripleChecker+Valid, 775 SdHoareTripleChecker+Invalid, 1545 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 99 IncrementalHoareTripleChecker+Valid, 1446 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.7s IncrementalHoareTripleChecker+Time [2022-04-28 06:02:13,784 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [164 Valid, 775 Invalid, 1545 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [99 Valid, 1446 Invalid, 0 Unknown, 0 Unchecked, 4.7s Time] [2022-04-28 06:02:13,785 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2218 states. [2022-04-28 06:02:23,177 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2218 to 2137. [2022-04-28 06:02:23,178 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 06:02:23,180 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:23,182 INFO L74 IsIncluded]: Start isIncluded. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:23,184 INFO L87 Difference]: Start difference. First operand 2218 states. Second operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:23,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:23,380 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 06:02:23,380 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 06:02:23,384 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:23,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:23,386 INFO L74 IsIncluded]: Start isIncluded. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 06:02:23,388 INFO L87 Difference]: Start difference. First operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) Second operand 2218 states. [2022-04-28 06:02:23,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 06:02:23,592 INFO L93 Difference]: Finished difference Result 2218 states and 2896 transitions. [2022-04-28 06:02:23,592 INFO L276 IsEmpty]: Start isEmpty. Operand 2218 states and 2896 transitions. [2022-04-28 06:02:23,596 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 06:02:23,596 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 06:02:23,596 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 06:02:23,596 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 06:02:23,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2137 states, 1487 states have (on average 1.2313382649630127) internal successors, (1831), 1511 states have internal predecessors, (1831), 479 states have call successors, (479), 171 states have call predecessors, (479), 170 states have return successors, (474), 454 states have call predecessors, (474), 474 states have call successors, (474) [2022-04-28 06:02:23,898 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2137 states to 2137 states and 2784 transitions. [2022-04-28 06:02:23,899 INFO L78 Accepts]: Start accepts. Automaton has 2137 states and 2784 transitions. Word has length 111 [2022-04-28 06:02:23,899 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 06:02:23,899 INFO L495 AbstractCegarLoop]: Abstraction has 2137 states and 2784 transitions. [2022-04-28 06:02:23,900 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 19 states have internal predecessors, (49), 8 states have call successors, (17), 2 states have call predecessors, (17), 3 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-28 06:02:23,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2137 states and 2784 transitions. [2022-04-28 06:02:34,544 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2784 edges. 2784 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 06:02:34,544 INFO L276 IsEmpty]: Start isEmpty. Operand 2137 states and 2784 transitions. [2022-04-28 06:02:34,546 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-28 06:02:34,546 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 06:02:34,546 INFO L195 NwaCegarLoop]: trace histogram [10, 9, 9, 6, 6, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 06:02:34,565 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Ended with exit code 0 [2022-04-28 06:02:34,751 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable41,42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:34,751 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 06:02:34,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 06:02:34,752 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 7 times [2022-04-28 06:02:34,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 06:02:34,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [504054409] [2022-04-28 06:02:34,752 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 06:02:34,753 INFO L85 PathProgramCache]: Analyzing trace with hash 1182187798, now seen corresponding path program 8 times [2022-04-28 06:02:34,753 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 06:02:34,753 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1799618751] [2022-04-28 06:02:34,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 06:02:34,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 06:02:34,772 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 06:02:34,772 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1041442862] [2022-04-28 06:02:34,772 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 06:02:34,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 06:02:34,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 06:02:34,773 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 06:02:34,779 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-28 06:02:34,848 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 06:02:34,848 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 06:02:34,850 INFO L263 TraceCheckSpWp]: Trace formula consists of 330 conjuncts, 107 conjunts are in the unsatisfiable core [2022-04-28 06:02:34,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 06:02:34,873 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 06:02:58,248 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:19,633 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:21,670 WARN L828 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-28 06:03:22,010 INFO L272 TraceCheckUtils]: 0: Hoare triple {210337#true} call ULTIMATE.init(); {210337#true} is VALID [2022-04-28 06:03:22,010 INFO L290 TraceCheckUtils]: 1: Hoare triple {210337#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(11, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {210337#true} is VALID [2022-04-28 06:03:22,010 INFO L290 TraceCheckUtils]: 2: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {210337#true} {210337#true} #108#return; {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L272 TraceCheckUtils]: 4: Hoare triple {210337#true} call #t~ret9 := main(); {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L290 TraceCheckUtils]: 5: Hoare triple {210337#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;havoc ~r~0;havoc ~s~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L272 TraceCheckUtils]: 6: Hoare triple {210337#true} call assume_abort_if_not((if ~x~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L290 TraceCheckUtils]: 7: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L290 TraceCheckUtils]: 8: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L290 TraceCheckUtils]: 9: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:22,011 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {210337#true} {210337#true} #94#return; {210337#true} is VALID [2022-04-28 06:03:22,012 INFO L272 TraceCheckUtils]: 11: Hoare triple {210337#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:22,012 INFO L290 TraceCheckUtils]: 12: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:22,012 INFO L290 TraceCheckUtils]: 13: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:22,012 INFO L290 TraceCheckUtils]: 14: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:22,012 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {210337#true} {210337#true} #96#return; {210337#true} is VALID [2022-04-28 06:03:22,013 INFO L290 TraceCheckUtils]: 16: Hoare triple {210337#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0;~r~0 := 0;~s~0 := 1; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:22,013 INFO L290 TraceCheckUtils]: 17: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:22,014 INFO L290 TraceCheckUtils]: 18: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:22,014 INFO L290 TraceCheckUtils]: 19: Hoare triple {210390#(and (= main_~r~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:22,015 INFO L290 TraceCheckUtils]: 20: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:22,015 INFO L290 TraceCheckUtils]: 21: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:22,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} assume !(~c~0 >= ~b~0); {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:22,016 INFO L290 TraceCheckUtils]: 23: Hoare triple {210400#(and (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~c~0 main_~x~0))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,017 INFO L290 TraceCheckUtils]: 24: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,017 INFO L290 TraceCheckUtils]: 25: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,018 INFO L290 TraceCheckUtils]: 26: Hoare triple {210413#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,018 INFO L290 TraceCheckUtils]: 27: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,019 INFO L290 TraceCheckUtils]: 28: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,019 INFO L290 TraceCheckUtils]: 29: Hoare triple {210423#(and (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,020 INFO L290 TraceCheckUtils]: 30: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,020 INFO L290 TraceCheckUtils]: 31: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} assume !!(#t~post8 < 100);havoc #t~post8; {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} is VALID [2022-04-28 06:03:22,021 INFO L272 TraceCheckUtils]: 32: Hoare triple {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:22,021 INFO L290 TraceCheckUtils]: 33: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:22,021 INFO L290 TraceCheckUtils]: 34: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,022 INFO L290 TraceCheckUtils]: 35: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:22,023 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210433#(and (= main_~b~0 main_~v~0) (= main_~c~0 main_~a~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~a~0 main_~y~0) (= main_~b~0 main_~x~0))} #98#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:22,023 INFO L272 TraceCheckUtils]: 37: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:22,023 INFO L290 TraceCheckUtils]: 38: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:22,023 INFO L290 TraceCheckUtils]: 39: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:22,023 INFO L290 TraceCheckUtils]: 40: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:22,024 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #100#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:22,024 INFO L272 TraceCheckUtils]: 42: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:22,024 INFO L290 TraceCheckUtils]: 43: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:22,024 INFO L290 TraceCheckUtils]: 44: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:22,024 INFO L290 TraceCheckUtils]: 45: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:22,025 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #102#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:22,025 INFO L272 TraceCheckUtils]: 47: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:22,025 INFO L290 TraceCheckUtils]: 48: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:22,026 INFO L290 TraceCheckUtils]: 49: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:22,026 INFO L290 TraceCheckUtils]: 50: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:22,027 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {210337#true} {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} #104#return; {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:22,027 INFO L290 TraceCheckUtils]: 52: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= 2 * ~v~0); {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:22,031 INFO L290 TraceCheckUtils]: 53: Hoare triple {210457#(and (= main_~b~0 main_~v~0) (= main_~s~0 0) (= main_~p~0 0) (= main_~k~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:22,035 INFO L290 TraceCheckUtils]: 54: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:22,055 INFO L290 TraceCheckUtils]: 55: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !!(#t~post7 < 100);havoc #t~post7; {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:22,058 INFO L290 TraceCheckUtils]: 56: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} assume !(~c~0 >= ~b~0); {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} is VALID [2022-04-28 06:03:24,064 WARN L290 TraceCheckUtils]: 57: Hoare triple {210509#(and (= main_~s~0 0) (= main_~p~0 0) (= main_~r~0 1) (= main_~b~0 main_~x~0) (= (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0)) (+ main_~c~0 main_~b~0)))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is UNKNOWN [2022-04-28 06:03:24,067 INFO L290 TraceCheckUtils]: 58: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,069 INFO L290 TraceCheckUtils]: 59: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post6 < 100);havoc #t~post6; {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,071 INFO L290 TraceCheckUtils]: 60: Hoare triple {210522#(and (= main_~r~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,073 INFO L290 TraceCheckUtils]: 61: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,074 INFO L290 TraceCheckUtils]: 62: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post7 < 100);havoc #t~post7; {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,076 INFO L290 TraceCheckUtils]: 63: Hoare triple {210532#(and (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,078 INFO L290 TraceCheckUtils]: 64: Hoare triple {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,079 INFO L290 TraceCheckUtils]: 65: Hoare triple {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} assume !!(#t~post8 < 100);havoc #t~post8; {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} is VALID [2022-04-28 06:03:24,079 INFO L272 TraceCheckUtils]: 66: Hoare triple {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:24,080 INFO L290 TraceCheckUtils]: 67: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:24,080 INFO L290 TraceCheckUtils]: 68: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:24,080 INFO L290 TraceCheckUtils]: 69: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:24,082 INFO L284 TraceCheckUtils]: 70: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210542#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~c~0 main_~a~0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~a~0 main_~x~0))} #98#return; {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:24,082 INFO L272 TraceCheckUtils]: 71: Hoare triple {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:24,082 INFO L290 TraceCheckUtils]: 72: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:24,083 INFO L290 TraceCheckUtils]: 73: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:24,083 INFO L290 TraceCheckUtils]: 74: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:24,084 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210564#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #100#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:24,084 INFO L272 TraceCheckUtils]: 76: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~a~0 == ~k~0 * ~b~0 + ~c~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:24,084 INFO L290 TraceCheckUtils]: 77: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:24,085 INFO L290 TraceCheckUtils]: 78: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:24,085 INFO L290 TraceCheckUtils]: 79: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:24,086 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {210337#true} {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #102#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:24,086 INFO L272 TraceCheckUtils]: 81: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} call __VERIFIER_assert((if ~v~0 == ~b~0 * ~d~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:24,086 INFO L290 TraceCheckUtils]: 82: Hoare triple {210337#true} ~cond := #in~cond; {210337#true} is VALID [2022-04-28 06:03:24,086 INFO L290 TraceCheckUtils]: 83: Hoare triple {210337#true} assume !(0 == ~cond); {210337#true} is VALID [2022-04-28 06:03:24,086 INFO L290 TraceCheckUtils]: 84: Hoare triple {210337#true} assume true; {210337#true} is VALID [2022-04-28 06:03:24,087 INFO L284 TraceCheckUtils]: 85: Hoare quadruple {210337#true} {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} #104#return; {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:24,090 INFO L290 TraceCheckUtils]: 86: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} assume !(~c~0 >= 2 * ~v~0); {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} is VALID [2022-04-28 06:03:24,092 INFO L290 TraceCheckUtils]: 87: Hoare triple {210580#(and (= main_~b~0 main_~v~0) (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~k~0 0) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~d~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~c~0 main_~x~0))} ~c~0 := ~c~0 - ~v~0;~k~0 := ~k~0 + ~d~0; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:24,094 INFO L290 TraceCheckUtils]: 88: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:24,096 INFO L290 TraceCheckUtils]: 89: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:24,098 INFO L290 TraceCheckUtils]: 90: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} assume !(~c~0 >= ~b~0); {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} is VALID [2022-04-28 06:03:24,109 INFO L290 TraceCheckUtils]: 91: Hoare triple {210617#(and (= main_~r~0 0) (= main_~b~0 (+ (* main_~q~0 main_~x~0) (* main_~y~0 main_~s~0))) (= main_~s~0 1) (or (= (* (- 1) main_~q~0) 0) (and (not (= main_~p~0 0)) (= (mod (* (- 1) main_~q~0) main_~p~0) 0))) (= main_~x~0 (+ (* main_~y~0 main_~r~0) (* main_~p~0 main_~x~0))) (= main_~k~0 1) (= main_~b~0 (+ main_~y~0 (* (- 1) main_~x~0))) (= main_~c~0 (+ (* main_~y~0 main_~r~0) (* (- 1) main_~b~0) (* main_~p~0 main_~x~0))))} ~a~0 := ~b~0;~b~0 := ~c~0;havoc ~temp~0;~temp~0 := ~p~0;~p~0 := ~q~0;~q~0 := ~temp~0 - ~q~0 * ~k~0;~temp~0 := ~r~0;~r~0 := ~s~0;~s~0 := ~temp~0 - ~s~0 * ~k~0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,111 INFO L290 TraceCheckUtils]: 92: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,113 INFO L290 TraceCheckUtils]: 93: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post6 < 100);havoc #t~post6; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,114 INFO L290 TraceCheckUtils]: 94: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(0 != ~b~0);havoc ~c~0;havoc ~k~0;~c~0 := ~a~0;~k~0 := 0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,116 INFO L290 TraceCheckUtils]: 95: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,117 INFO L290 TraceCheckUtils]: 96: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post7 < 100);havoc #t~post7; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,118 INFO L290 TraceCheckUtils]: 97: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(~c~0 >= ~b~0);havoc ~d~0;havoc ~v~0;~d~0 := 1;~v~0 := ~b~0; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,120 INFO L290 TraceCheckUtils]: 98: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #t~post8 := ~counter~0;~counter~0 := 1 + #t~post8; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,121 INFO L290 TraceCheckUtils]: 99: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} assume !!(#t~post8 < 100);havoc #t~post8; {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} is VALID [2022-04-28 06:03:24,121 INFO L272 TraceCheckUtils]: 100: Hoare triple {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} call __VERIFIER_assert((if ~a~0 == ~y~0 * ~r~0 + ~x~0 * ~p~0 then 1 else 0)); {210337#true} is VALID [2022-04-28 06:03:24,121 INFO L290 TraceCheckUtils]: 101: Hoare triple {210337#true} ~cond := #in~cond; {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:24,122 INFO L290 TraceCheckUtils]: 102: Hoare triple {210446#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:24,122 INFO L290 TraceCheckUtils]: 103: Hoare triple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 06:03:24,128 INFO L284 TraceCheckUtils]: 104: Hoare quadruple {210450#(not (= |__VERIFIER_assert_#in~cond| 0))} {210630#(and (= (+ main_~y~0 (* main_~p~0 main_~x~0)) (+ main_~y~0 (* (- 1) main_~x~0))) (= (+ main_~y~0 (* main_~p~0 main_~x~0)) main_~a~0) (or (and (not (= (+ main_~q~0 main_~p~0) 0)) (= (mod (* (- 1) main_~p~0) (+ main_~q~0 main_~p~0)) 0)) (= (* (- 1) main_~p~0) 0)) (= main_~r~0 1) (= main_~x~0 (* (+ main_~q~0 main_~p~0) main_~x~0)) (= (+ main_~s~0 1) 0) (= main_~b~0 (+ (* (- 1) (* main_~p~0 main_~x~0)) (* (- 1) main_~y~0) (* (+ main_~q~0 main_~p~0) main_~x~0))))} #98#return; {210670#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} is VALID [2022-04-28 06:03:24,129 INFO L272 TraceCheckUtils]: 105: Hoare triple {210670#(and (= (* main_~q~0 main_~x~0) (+ main_~b~0 main_~y~0)) (= (+ (* main_~q~0 main_~x~0) (* (div (* (- 1) main_~x~0) main_~x~0) main_~x~0)) main_~x~0) (= (+ main_~s~0 1) 0))} call __VERIFIER_assert((if ~b~0 == ~x~0 * ~q~0 + ~y~0 * ~s~0 then 1 else 0)); {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 06:03:24,129 INFO L290 TraceCheckUtils]: 106: Hoare triple {210674#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {210678#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 06:03:24,130 INFO L290 TraceCheckUtils]: 107: Hoare triple {210678#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {210338#false} is VALID [2022-04-28 06:03:24,130 INFO L290 TraceCheckUtils]: 108: Hoare triple {210338#false} assume !false; {210338#false} is VALID [2022-04-28 06:03:24,131 INFO L134 CoverageAnalysis]: Checked inductivity of 248 backedges. 47 proven. 113 refuted. 0 times theorem prover too weak. 88 trivial. 0 not checked. [2022-04-28 06:03:24,131 INFO L328 TraceCheckSpWp]: Computing backward predicates...